{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Deep Learning with PyTorch Step-by-Step: A Beginner's Guide"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Extra Chapter"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "try:\n",
    "    import google.colab\n",
    "    import requests\n",
    "    url = 'https://raw.githubusercontent.com/dvgodoy/PyTorchStepByStep/master/config.py'\n",
    "    r = requests.get(url, allow_redirects=True)\n",
    "    open('config.py', 'wb').write(r.content)    \n",
    "except ModuleNotFoundError:\n",
    "    pass\n",
    "\n",
    "from config import *\n",
    "config_chapterextra()\n",
    "# This is needed to render the plots in this chapter\n",
    "from plots.chapterextra import *"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "import torch.optim as optim\n",
    "import torch.nn as nn\n",
    "from sklearn.datasets import make_regression\n",
    "\n",
    "from torch.utils.data import DataLoader, TensorDataset\n",
    "from stepbystep.v3 import StepByStep\n",
    "\n",
    "from data_generation.ball import load_data"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Vanishing and Exploding Gradients"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Vanishing Gradients"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ball Dataset and Block Model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "X, y = load_data(n_points=1000, n_dims=10)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "ball_dataset = TensorDataset(torch.as_tensor(X).float(), torch.as_tensor(y).float())\n",
    "ball_loader = DataLoader(ball_dataset, batch_size=len(X))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "torch.manual_seed(11)\n",
    "n_layers = 5\n",
    "n_features = X.shape[1]\n",
    "hidden_units = 100\n",
    "activation_fn = nn.ReLU\n",
    "model = build_model(n_features, n_layers, hidden_units, activation_fn, use_bn=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Sequential(\n",
      "  (h1): Linear(in_features=10, out_features=100, bias=True)\n",
      "  (a1): ReLU()\n",
      "  (h2): Linear(in_features=100, out_features=100, bias=True)\n",
      "  (a2): ReLU()\n",
      "  (h3): Linear(in_features=100, out_features=100, bias=True)\n",
      "  (a3): ReLU()\n",
      "  (h4): Linear(in_features=100, out_features=100, bias=True)\n",
      "  (a4): ReLU()\n",
      "  (h5): Linear(in_features=100, out_features=100, bias=True)\n",
      "  (a5): ReLU()\n",
      "  (o): Linear(in_features=100, out_features=1, bias=True)\n",
      ")\n"
     ]
    }
   ],
   "source": [
    "print(model)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Weights, Activations, and Gradients"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "hidden_layers = [f'h{i}' for i in range(1, n_layers + 1)]\n",
    "activation_layers = [f'a{i}' for i in range(1, n_layers + 1)]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "loss_fn = nn.BCEWithLogitsLoss()\n",
    "optimizer = optim.SGD(model.parameters(), lr=1e-2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "sbs = StepByStep(model, loss_fn, optimizer)\n",
    "sbs.set_loaders(ball_loader)\n",
    "sbs.capture_parameters(hidden_layers)\n",
    "sbs.capture_gradients(hidden_layers)\n",
    "sbs.attach_hooks(activation_layers)\n",
    "sbs.train(1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "parms, gradients, activations = get_plot_data(train_loader=ball_loader, model=model)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "image/png": "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AG9vb3h5eQkcYcPcunUL//jHP/D4448jODgYhYWF+Oyzz3Djxg0MGzZM6PAaJTAwEIGBgVbb5HI5goODERMTI1BUTaNSqfDuu+8iJSUFwcHBuHLlChYsWIDAwED86U9/Ejo8Egn2166N/bXrY19NzUVM/bXY+mpAfP212PpqwHX6ayYoBLBz505Mnz7d8vqFF14AAMyePRtz584VKqxGu379Onbu3AnAtG5udcuWLcOECRMEiKrx5HI5Tp8+jS+++AJFRUXw9/dHly5dsHPnTjzwwANCh0e3yWQynDp1Cv/+979RWlqK4OBg9O7dG2vXrkXr1q2FDo9Egv21a2N/7frYV1NzEVN/Lba+GmB/7Q5cpb+WlJSUuO/ALSIiIiIiIiISBU6SSURERERERESCY4KCiIiIiIiIiATHBAURERERERERCY4JCiIiIiIiIiISHBMURERERERERCQ4JiiIiIiIiIiISHBMUBARERERERGR4JigILeyfv16+Pr64vDhw0KHQkREdWB/TUTk+thXk6thgoKIiIiIiIiIBMcEBZETVVRUCB0CERHZgf01EZHrY18tfkxQkKhoNBq888476NevHyIiIhASEoIBAwZg586dVvsNHjwYjz76qM1j9O/fH/369bPatmXLFgwYMABt27ZFeHg4UlNTcebMGat9pk2bhuDgYFy5cgXjx49HeHg4Ro8eDQDIz8/HjBkz0KlTJwQFBSEuLg6pqanIyspyXOOJiNwI+2siItfHvpqaGxMUJCplZWVYu3YtEhMT8frrr2PevHnQarWYMGECfvzxR8t+48ePR1ZWFv744w+r958/fx5Hjx5FamqqZdvHH3+MZ555BqGhoViwYAFeeuklZGVlYfDgwbh06ZLV+w0GA0aMGIFWrVrhrbfeshxn0qRJ+OabbzBu3Di8//77mDp1KgwGA86fP++8LwYRkQtjf01E5PrYV1NzkwsdAJEj+fr6IisrC56enpZtU6dORe/evbFkyRIMGDAAADBs2DDMnj0bGRkZeOCBByz7/vvf/4ZcLseoUaMAAFevXsXChQsxe/ZszJ0717Lf2LFjkZSUhPfffx9Lly61bNdqtRg0aBAWLVpk2VZaWooDBw7g7bffxowZMyzbX3zxRcd/AYiI3AT7ayIi18e+mpobKyhIVGQymaUD1Wg0KC4uRllZGR599FEcO3bMsp+Pjw+efPJJbN68GQaDAQBgNBqxadMmJCcnIzAwEACwfft26HQ6jBw5EoWFhZYPDw8PdOvWDXv37q0RQ1pamtVrpVIJDw8P7N+/H8XFxc5qOhGRW2F/TUTk+thXU3NjBQWJzrp167B8+XJkZ2fDaDRatkskEqv9xo0bhy1btmDfvn3o27cvDh48iMuXL+ONN96w7PO///0PAJCUlGTzXC1atLB6LZVKER4ebrXN09MT8+fPx/z58xETE4Nu3bph4MCBGDNmDNq3b9+kthIRuTP210REro99NTUnJihIVDZv3owXXngBQ4YMwcyZMxEYGAi5XI7169dj06ZNVvv2798fISEh2LhxI/r27YuMjAy0bt0aTzzxhGUfcwZ48+bNkMtr/rpIpdZFSB4eHjb3e/755/GnP/0JO3fuxO7du5Geno4PP/wQGzZsQN++fR3RdCIit8L+mojI9bGvpubGBAWJytatWxEZGYkNGzZYZXXXr19fY1+ZTIYxY8Zg7dq1WLRoEb766iukpKTAy8vLss99990HAAgLC0NcXFyTYouMjMRzzz2H5557DteuXUOfPn3w0UcfsRMlonsS+2siItfHvpqaG+egIFGRyWQAYFV+dunSJXz77bc29x83bhzKysrw4osvoqSkBGPHjrX6fEpKCuRyORYvXmzJ+FZXUFBQb0wVFRVQq9VW28LCwhAYGIiSkpJ6309EJEbsr4mIXB/7ampurKAgt7Rhwwbs3r27xvYhQ4Zg+/btGDduHIYMGYIbN25g9erViIqKqrHsEQDEx8cjISEBX331FcLCwtCrVy+rz0dGRuKtt97CvHnz8Nhjj+Gpp56Cn58frl69iu+//x7dunXDRx99VGes58+fR0pKCoYNG4a4uDh4enri+++/R3Z2Nt5+++0mfR2IiFwd+2siItfHvppcBRMU5JbWrl1rc/vevXuxYMECrF69Grt370aHDh2waNEiXLhwwWYnCpgyvceOHcOYMWNqTPYDANOnT0d0dDSWLFmCDz/8EDqdDm3btkWPHj0wceLEemMNCwvD6NGjsXfvXmzevBkSiQRRUVFYsmSJXe8nInJn7K+JiFwf+2pyFZKSkhJj/bsRidfatWvx4osv4tChQ4iNjRU6HCIiqgX7ayIi18e+mpqCCQq65/Xv3x8SiQQ//fST0KEQEVEd2F8TEbk+9tXUFBziQfek8vJy7Nq1CwcOHMDRo0exZs0aoUMiIiIb2F8TEbk+9tXkKKygoHvS5cuX8dBDD8HHxwd//vOfOaEOEZGLYn9NROT62FeTozBBQURERERERESCkwodABERERERERERExREREREREREJDgmKIiIiIiIiIhIcExQEBEREREREZHgmKAgIiIiIiIiIsExQUFEREREREREgvv/hHRer36uuDYAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 1080x360 with 3 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plot_violins(parms, gradients, activations)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Initialization Schemes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "# nn.Linear.reset_parameters\n",
    "def reset_parameters(self) -> None:\n",
    "    init.kaiming_uniform_(self.weight, a=math.sqrt(5))\n",
    "    if self.bias is not None:\n",
    "        fan_in, _ = init._calculate_fan_in_and_fan_out(self.weight)\n",
    "        bound = 1 / math.sqrt(fan_in)\n",
    "        init.uniform_(self.bias, -bound, bound)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "def weights_init(m):\n",
    "    if isinstance(m, nn.Linear):\n",
    "        nn.init.kaiming_uniform_(m.weight, nonlinearity='relu')\n",
    "        if m.bias is not None:\n",
    "            nn.init.zeros_(m.bias)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "with torch.no_grad():\n",
    "    model.apply(weights_init)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABCgAAAFYCAYAAACRcs2aAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nOzdd3xTVf/A8U/SdNMSkFGglFH23ihLBJQhPmwQFHhEkCH6gA8IKDxuEAUH8gMZogKioIKA7CVDmVVm2VDKpjudaZvc3x/hhoampS1tE5rv+/XqiyZ3fU9ozr3ne885VxMbG6sghBBCCCGEEEII4UBaRwcghBBCCCGEEEIIIQkKIYQQQgghhBBCOJwkKIQQQgghhBBCCOFwkqAQQgghhBBCCCGEw0mCQgghhBBCCCGEEA4nCQohhBBCCCGEEEI4nCQohBBCCCGEEEII4XCSoBBCCCGEEEIIIYTDSYJC5MnixYvR6/V8//33jg7loeW2LAkJCZQsWZIOHToUcGT57/XXX6dSpUrExsY6OhSXde3aNcqWLcuHH37o6FCEKFRqXfvdd985OpRHQlE6zwohBBROvSZ156NPEhTCav/+/YwcOZKGDRsSEBBAhQoVaNSoEf369ePzzz8nKSnJuu4///wDQMOGDR0Vbr7JbVmOHz+O2WymUaNGBRmWXQMGDECv16PX6/nzzz/trvPhhx+i1+tZsGCBzfvHjx9n+fLljBs3Dr1en2m769evM3bsWGrVqkWZMmWoX78+kydPLrLJjPws79q1a5k4cSJdu3alYsWK6PV6hg0bZnfdwMBAXnrpJebOnUt4ePjDFkMIG8HBwdY6Iic/hZkoO3bsGIBD6k57DAYDlStXJjAwkOjoaLvrvP766+j1egYMGEB6enqhxleUzrNCFLaM10vqT9WqVenUqRMrVqxAUZR8OU7fvn3R6/Vs27Yt2/XS09MpV64cpUqVIjk5Ocv1evbsiV6v548//siX+HJD/cw2bdqUaVlcXBwvvPACer2ejh075vn6pTDqNak7H32a2NjY/PmGikeW2Wxm0qRJLFq0CB8fHzp16kRQUBApKSmEhYXx119/ARAeHo5OpwMsd4GTkpIIDg7Gzc3NkeE/tNyWZd68ebz11lvMmTOHIUOGFEKE99SqVYtbt24BMHz4cGbNmpVpnb59+7J9+3a2bt1KixYtrO/369eP/fv3c/bsWXx9fW22CQsL45lnnuHOnTt069aNGjVqEBISwt69e6levTpbtmyhZMmSBVu4QpTf5W3Tpg0nT56kWLFilC9fnnPnztG7d2+WLFlid/1bt25Rt25dBg4cyNy5c/OrWMLFJSYmMmfOnEzvf/rpp5jNZiZOnIhWa3tf4rnnnqNevXqFEl/btm05c+YM169fx8PDo1CO+SCffPIJ06dPZ/z48bzzzjs2yz766CM+/fRTWrRowW+//YaPj0+hxlaUzrNCFDb1emnChAm4ublhMpm4fPky69atIy0tjXHjxvHuu+8+9HGqVatGZGQkFy5coFSpUlmud+LECdq2bUv9+vXZu3ev3XUURaFy5coYDAYuX75s92ZSQVI/s7Nnz1K2bFnr+8eOHWPo0KGEhYUxfPhwpk+fnuc6vDDqNak7H32SoBB8/vnnvPfee3Tq1IlFixZRokQJm+Xx8fEcOHCAp59+2kEROpdXXnmFVatWsXv37lxlZ3/44QdeffVV1q9fT9u2bXN93Bs3blCnTh3q1q1LQkICSUlJnDlzJlPlW61aNWJjY7l69Sre3t4AXLp0iaZNmzJo0CD+7//+L9O+e/fuzc6dO5k5cyYjR460vv/WW28xb948XnrpJT7//PNcx+ys8ru8e/bsoUKFClStWpV9+/bx3HPPZZugAEvCaN++fZw+fbrQL0KE67h06RJNmjShSpUq1rtKjmA0GgkMDKROnTrs3r073/b7sPWqwWCgQYMGpKenc/z4cWticsmSJbzxxhvUrFmTzZs3ZzovCiGcl3q9VLFiRU6cOGGzbO3atQwdOhRfX1/Cw8MfqgEbHh5OgwYNCAwM5OTJk9muu3TpUl5//XX+/e9/88UXX9hd58KFCzRr1ozg4GBCQkJyFUt+XWNWqFCBU6dOWd//7rvvmDRpEu7u7nz55Zf06dMn1/sWIrdkiIdg/vz5AMyePdvuRZifn59NcuLPP/9Er9fz5ptvZlo3NTWVr776ilatWhEQEECdOnV4//33SUtLo169elSrVs1mfXVfEydO5OTJkwwZMoSqVasSGBhI//79uXLlCmA5Cbz++uvUrl2bChUq0LVr10wnHbBkn3/66Se6d+9O1apVKVOmDK1atWLx4sV2u/NlVRaTycTChQtp27YtAQEB1K5dmw8++ID09HSOHTuGp6cnderUycGnm3/UxkXjxo3p2bMnERER7Nu3z2adK1euEBkZSa1atazJCbCcGBVFsXtiCQsLY+fOnVSqVIkRI0bYLJsyZQq+vr6sXLmSxMTEPMeelJTE7Nmzad++vXUIhL0fe/+n+a0gytuuXTuCg4PRaDQ53qZ3794kJyfz888/53gbIXLr6NGjgKXeyM4vv/zCyy+/TJMmTQgMDCQoKIi2bduyaNEiTCaTzbp79uxBr9czZcoUzp8/z6hRo6hZsyblypWjffv2dhMQp06dIi0tjYYNG3LhwgVGjx5NrVq1st2mMPj7+zNmzBgSEhKsvZnWr1/PhAkTKF++PL/++qvd82JuPq85c+ag1+vtJocBIiIiCAoKonHjxqSmpgLZn2c3bNjAgAEDCA4OpnTp0jRo0IAPPvgAo9GYad2M59ijR4/ywgsvUKVKFfR6PQcOHMj15yXEo0C9XrI3nKxjx46ApcdZVuf5nH7H1OM0adLkgTGpdXF266pJiZzsL79lvMYEy3XbK6+8wrhx46hSpQo7d+60ew2Zm7owq3otP9sCWR0jL+ctyH27RuQPSVC4uMTERO7cuQOAu7t7jrZRxxHf33sgOTmZHj16MG3aNDQaDSNGjKBjx44sWLCA0aNHc+3atUzbqPsKDw/n6aefJj09nRdeeIFq1aqxdetWXnrpJfbv30+bNm24evUqffv2pXHjxuzfv58XX3yRtLQ0m+P369ePUaNGERkZyYABAxg6dCgGg4EJEyYwZcqUHJUlNTWV/v378+abb2I2mxk+fDhPP/00CxYsYOzYsZw/f546derk+PPKLxlPHr169QJgzZo1Nutk1RjZtWsXWq2W5s2bZ9rvnj17AOjQoUOm7t9+fn60bNmSpKQkjhw5kqe4o6Oj6dSpk/XkPmTIEEaPHk1gYCAAWq2WKlWqUK1aNWrWrJmnY+RGQZc3p1q2bAnAzp07C/Q4wrVld6GuSklJYcyYMYSFhfH4448zYsQIevXqxZ07d5g4cSLTpk2zWV+tN69du0a7du2Iioqif//+dOjQgWPHjvHCCy9w8+ZNm23Uuun27du0bduWiIgI+vXrl+02hWXUqFHo9XoWLVrE+vXrGTFiBP7+/vz666/Weiqj3H5e6hCa0NBQu8f/6KOPMBgMvP/++9Zu0/bOTSaTieHDh/PCCy9w+vRpunfvzvDhw/H19WX27Nl2hxyq+7l48aL1HPvSSy/Rr1+/QhvaI0Rhu7+xndGlS5cAKFeuHP7+/jbLcvsdy2kCGODvv/8Gsk8+5GSdgpIx2XLu3Dk6duzIqlWr6N+/Pzt27KBGjRqZtsnruaMg2wIPOkZuzlt5adeI/KFzdADCsXx9fQkKCiI8PJy+ffsyfPhwOnToQOXKlbPcJqsv/xtvvMH+/fsZP348U6dOtXabGzZsmDVjff9Fsrqvw4cPs2nTJutyo9FIkyZN+Pvvv3nxxRf55ptvbHpxdOrUiSNHjnDhwgVq164NwIgRI9i+fTtvvPGGtTIBmDZtGo8//jgLFy5k1KhRNmWzV5YJEyawY8cOJkyYwNtvv23dz/Dhw3nqqaccNkFmxhNuo0aNqFy5MuvXr2fWrFnWuUHsnZQTExM5ceIE1atXx8/PL9N+z58/D0DVqlXtHjc4OJidO3dy4cIFnnzyyVzHPXLkSEJDQxk5ciQzZsywJgUmTpxI06ZNiYmJ4ZdffiE4ODjLfcybN4+4uLgcHzMoKIgXXnjB7rKCLm9OVa1aFb1eb53jRYiCoF5AZ1dnmc1mjh07Rrly5Wzej4mJoUWLFixfvpzp06db3z9+/DhgSfatW7fOJvH5+uuvs3TpUg4ePEjPnj0zxXHw4EHWrl1rMz9OVtsUFrUXxfTp0xk8eDDe3t789NNP1nPL/XL7eWWXoAgNDWXZsmW0adOG5557zvq+vXPT5MmT+eWXXxg5ciQffPCBNZlhMpl4/vnn2bJlC3/++SetW7fOtJ8DBw7w22+/2SwToqjKKjFrMBiYPHkyAOPGjcu0XW6/Y9klQjJKTU0lNDQUHx+fLOsVcI4ERVhYGB06dCAtLY3Zs2fz8ssvZ7lNbuvCByUP8qMtkNUx8nLeyku7RuQPSVAIvvnmG0aPHk1oaChvvPEGAOXLl6dDhw4MHjzYeqdXdfz4cby8vKhVq5b1vSNHjvDjjz/SqVOnTBONNW7cmPr163Ps2DEaNGiQaV8AX331lc2X3NPTk+rVq3P9+nXGjx+faf6LOnXqcOTIEWv3vK1bt/L777/zzDPP8L///c9mXX9/f5577jkWLFjAoUOHbBIU95flyJEjLF26lGbNmjF16lSb/TRo0ICmTZty6NAhh1RIR48exd3dnbp16wKWmZ6/+OIL9uzZY33kqb2T282bNzGbzZQpU8bufg0GAwDFixe3u1y9w5CbBIFqz549bNu2jSZNmvDRRx/Z9FgoWbIkHTt25JdffiEkJCTbBMX8+fO5evVqjo/bunXrLBMUBVne3CpTpgznzp0jISGBYsWKFfjxhGtRFIVjx46h0Wiyvcvj4+NjdwLIEiVKUKVKFQ4fPozZbLZ+f9ULwC+//DJTryy1Lk1JSbF5X01QzJkzxyY5kd02halr167WC+kvvviCxx9/PMt1c/t5lSlThjJlynD27Fmb98GSQFcUxeYiHjKfm0JCQli8eDGdOnVi5syZNuu6ubkxePBgtm3bRkhIiE0SQj3HfvDBB5KcEC5DrW+2bt3KwYMHMZvNXL9+na1bt5KYmMi0adNs5p+CvH3H1Pr1QdeEp06dIjU1laZNm2Y550V6ejonTpxAp9NlulYuDOpntnTpUjw9Pdm0adMDEyW5rQvttR/U9+Hh2wLZHSO35628tmtE/pAEhaB58+YcPnyYw4cPs3PnTvbv38/BgwdZvnw5y5cv55133mH8+PGApbvTuXPnaNiwofWuPcDChQsBrAmO+6kTj2WseNR9lS9fnm7dumXaJjw8HE9PT7vdVtXHG1WqVAmwTOID9jPiGY+fcTycvbKo5bA3HASwjkV+UJeu+vXrZ9mgzniXTNW6dWs2bNiQ5f7CwsKIioqiYcOGeHp6AvcSFKtXr6ZDhw7WxoiHh4fN/Bjq4/PyOhGjOndHbuZXUP34448AjB492ubvRaX26Lh/nOL9CmNuCtXDlDe31L+nqKgoSVCIfHfp0iUMBgPBwcFZJuQAYmNj+eabb9iyZQvnzp3DYDBgNputywMDA60XmImJiVy4cIGyZcvarcsuXrwIQJUqVazvpaamcvr0acqXL0/37t1ztI09+V2vqiIjI/n3v/9tfX3mzJls18/N56WqV68eO3fuJCwszNp7a+vWrezYsYMhQ4bYXOTaOzctWLAARVHw9/dnxowZmWK6fPkygM1cS+p+SpQowdChQx/4OQhRFKjXSwBff/21zTIPDw8WLFhgHSabUW6/Y5cvXyYmJsbaGzI76s2j7HpanDx5kpSUFOrVq2czh5g9BXWNGRQUREBAAIcOHWLt2rUPTFDkpi7Mqv2Qn22BrI6Rl/NWXto1Iv9IgkIAlsZYixYtrHe24uPjee+991i8eDEfffQRI0eOxMfHh5MnT2IymTJ9IXft2oWfn1+Wd51u375NiRIlrJUIYN1Xu3btMjUG1UcsPfHEE5nGCIKlwVquXDlKly4NwL59+/D09Mzy+OqjOYOCgjIdP2NZ1HK0b9/e7n7CwsIyJQDsGT16dKY78CdOnGDjxo0MHDjQJo7747LH3jjHRo0aUbVqVX7//Xc+//xzwsPDiYuLo3HjxjaPf/Ly8gKwO4EaPLjHQHx8vM16ufHXX3+h0Wjo3Lmz3eU3btwAsh5uURAKsry5pT4L/UEXI0LkRU7mnzh16hR9+vTh1q1bNGrUiJ49e/LYY4+h0+mIiIhgyZIl1l5bYKk3zWYzTz75pN07gceOHUOr1dpso06Q2b59+0wN96y2sSe/61WwfN/79u3LxYsXefPNN1m4cCGLFi3itddes/uo4dx+Xio1QREaGkrVqlUxmUz873//w8/PL1NvPXvnJnWumtWrV2dbnoxzZqj76dy5s90EsRBFkXq91K9fPxYtWgRYGtKrV69mwoQJjB49mubNm2eaXya337GcDu/IGFN2dbE671WzZs0euL+CusZs1qwZn3zyCZ06deLLL78kKCgoyyEeeTl32Gs/5GdbILtj5Pa8lZd2jcg/csYSdvn5+fHOO++wePFi0tPTuX79OtWrV7dWYhl7EKSkpBAREUGNGjXsXnzevn2bM2fO0K5dO5v3s5tc6OjRoyiKYnfZ1atXiYqKsjZ64+PjMRgMVKtWze7xwTLUwNfX1yYbfH9Z1HLUrFnTbgV2+vRpzp49S6NGjR74/OcxY8Zkeu+HH35g48aNDBo0KNePgMrqRNizZ08+++wzdu3aZT1Z3b+OOrRD7Ulxv+rVqwP3Msj3U9/P7UzFZrOZq1evUrJkSbsnloSEBPbs2YO/v/8Ds/T5OQdFQZU3L6Kjo9FqtTz22GMFfizhenJyUTxy5EgiIyOtPbEyUp/wlLFOUbvJ2qub09PTOXXqFDVq1LDpEZRdHFltY09+16upqam8+OKLHD16lNdee4233noLnU7H9OnTmTt3bqbhgpD7z0uVcR6K7t278+2333LmzBneeeedTMPv7J2bIiMjadasGdu3b89x+TI2OoRwFer1UsbrVL1ez7Bhwzh69ChLly7l+++/5+2337Yuz8t3LCcJYNXZs2eB7G/GbNu2DSDLG2QZFeQ1ZqlSpfj55595+umnefPNN6lQoQJdunTJtE1u60J77YeM7z9sWyC7Y+T2vJXXdo3IP5KgEFm6ffs2YLkDX758ecD+5DM6nQ6dTkdsbKzd/Xz11VeYzeZcVRjqMnsV//0Xu56enmi12iyPv3r1ai5evMiQIUNs7lTfXxY3Nzfc3NyIiIiwu5+PP/44y5gKWlYnwh49evDZZ5+xevVq692++z/PgIAASpcuzYULF1AUJVOGWj2R7dy5M9P46Pj4eA4ePIi3t3euL3LV4yQmJmIymTIlfebPn09ycjLDhg174BNR8nMOioIqb24lJiZy8+ZNateu/VDPYRciKw+6gL527RonT56kdevWmS4wk5KSWLJkSabt1XrTXlLxzJkzJCcn5+oCNKttCprZbGbkyJHs3r2b559/nvfffx+wPNFj/vz51l4UGR8xmpfPS6UmKE6fPk1cXBwff/wxlSpVstvQuP/cpHYpz+rclJXszqNCFFXZ1XtDhw5l6dKl/PrrrzYJirx8x3LziFH1KRPq0JP7nT59mu3bt1OyZMkse5wWpPs/s+rVq7N8+XJ69+7Nyy+/zIYNG2w+z4c5dxRUWyAnx8jpeSuv7RqRf+Qxoy7sp59+4o8//rAZs6q6fv269cLppZdewtfXF7B8yd3d3W2GOOh0OqpVq8adO3cyZZ5//PFH5s2bB9ivMHQ6HfXr1890/OxOMPdXQB4eHjRt2pTIyEi2bNlis+7+/fsZN24cpUuX5q233sq0n4xlcXd3Jzg4mOjoaH777TebdRcvXszatWuzjKkgKYrC0aNH8fT0zDS0pGHDhgQHB7Nx40YOHjwI2K/k27RpQ2xsrPUJFhlVqVKFDh06EB4ebu0OqZoxYwaJiYk8//zz1r8B1ejRo9Hr9XbHaoIlQdGgQQNSUlL46aefbJZt376dTz75hMDAQCZOnPjAz+DEiRPExsbm+Ce7sZZ5Le/ly5c5d+4cSUlJD4w3J0JCQjCZTLm+0yFETiiKwokTJ7KdIFMd/hUeHm4zBCw2Npbhw4db64v7e1C4ubnZrbez6ilx9OjRLOv6nPTyKAiTJk1izZo1PPPMM8ydO9eaUPX39+fVV18lPj6euXPn2myTl89LVaNGDTw9PQkNDWXWrFlERkby/vvvW+cUyuj+c5O3tzf16tXjypUrrFy50m55QkJCbCaKU/ej0+nkcaLCZajXS1nVe02bNiUwMJBLly5x8uRJ6/u5/Y4pisLx48fRarU5aqSqNzzmzp1rHdqpOnr0KIMHD8ZkMjF16tRCH/KZ1WfWpk0b5syZQ2JiIgMGDODKlSvWZXk9d9zfflDfz4+2wIOOkZvzVl7bNSL/SA8KF7Z8+XL27dtHYGAgTzzxBIGBgSQnJ3P58mV27txJWloaAwYM4L333gMs3WHPnDlDrVq1Mg1xeOONN3jllVcYNGgQvXr1IiAggCNHjnDy5Enq1KnDyZMnbTKX6r5q1qxptzI+evQofn5+drvZq7P9ZqxMpk2bRu/evXnxxRfp1asXFSpUIDQ0lG3btlG6dGl+/vlnAgICMh3//rKMHz+e0aNHM3z4cDZu3Ei5cuU4cOAAISEh1sexFvaF9MWLFzEYDDRt2tRuT4OePXsye/ZsQkJC8Pb2tvsIqx49erBmzRq2b99u91nWs2fP5plnnmHSpEns3r2bmjVrcuTIEfbu3Uu1atUyPcsasE6ElF3vhylTpjBw4ED+85//sGvXLoKCgjh58iTbtm2jYsWK/PLLL3mevPNh5KW8//rXv7h69Srr16/PlFT4/fffrUmRO3fuAJbxpKNHj7auo3Z5VKnjXf/1r3/la9mEALhw4YJ16FtW86mUKlWKdu3aWZ8E1LFjR+7cucOOHTto1qwZ3t7e6PV6ypYtC1jmsTl79iw1a9a0O3O7vbtd6gSZNWvWtF7UPmibgjZz5kwWLVpEixYt+O677zLNzzBy5EjmzZvHwoULGTt2rLUXRW4/r4x0Oh01a9YkNDSUhQsX8sQTT9CjR49M62V1bvrwww/p168fI0eOZNmyZTRo0ACNRsPNmzc5fvw4t27dsk4Yd/9+7H3uQhRF6vVSVo9VB+jWrRsLFy5k7dq1Nsm73HzH1PrVx8cny0nVvby8+PTTTwH473//y6ZNm9i7dy+NGjWiVatWeHl5cenSJeuTLv7zn/8wbNiwfP5EHkz9zOydK55//nnCwsL4+OOP6d+/P1u2bEGv1+e6LsyqXsvPtkBWx8jLeQty364R+UsSFC7s3XffZcuWLezbt48DBw4QERGBRqMhICCAXr16MXjwYJuGWGhoKGlpaXYzhv379ycuLo558+axevVqypQpwzPPPMPXX39Nt27dCAwMtHm8p7ove3ea4uLirJPi2HuSwrFjxyhdurR12AlAu3btWL9+PTNnzmTjxo2YTCaCgoL4z3/+w+uvv27TTTe7sgwcOBCDwcD8+fNZvXo1er2eZs2asWHDBt544w27mdmC9qCJmNQEBVhmdrY3XKB79+6UK1eOFStW2O1SXKVKFf744w+mT5/O9u3b2bZtG2XLlmXkyJFMnjw50+cHlkmHdDodffv2zTL2zp07s3LlSj777DM2bdqEyWSiatWqTJo0idGjR2f7ZIGClJfyZufEiRPWJ5aowsPDbRoMGRMUZrOZVatWUadOHVq1avVwhRHCjuyGVWS0ZMkSpk6dyvbt2/nmm2+oVasWU6dOpV27djRu3NhmPPTp06ezrLfVY2q1Wpu7VKGhoaSmpuZqm4L07bffMmPGDGrWrMnKlSvtXrD6+fkxduxY3n//ff7v//7PZhLL3Hxe96tXrx7Hjx/HZDJl2fMsq3NT+/bt2bZtG1988QX79+/nwIEDFCtWjLJly9KyZUu6d+9uM1xN3Y8M7xCuJCfzQnTv3p2FCxeybt06m2EeufmOqfVrUlISy5Yts3ucjI3XgIAAdu/ezezZs9myZQsbNmywXm/369ePYcOG0bJly4cuf1486Bpz8uTJhIWF8dNPPzFo0CDWrFmDp6dnrurCrOq1/GwLZHWMvJy3IPftGpG/NLGxsZn79wuRTzZt2sTAgQP573//a/eutCg8X331FdOmTWPr1q3Wp7XklfporcGDBzNnzpx8itB1bNiwgRdeeIF58+YxaNAgR4cjhBBCCCEeQNo1hUMSFOKhmUwmoqOjrY/5UR08eJABAwbg5ubG4cOH7T6yTRSe1NRUWrZsScWKFVm3bt1D7ev3339n2LBhHDlyJEeP8hP3KIpC27Zt0el07Nq1y+6dASGEEEIIUfikXeN4MsRDPLRz587x5JNP8tRTTxEcHEx6ejqhoaHs27cPvV7PihUr5EvsBDw8PPj666/ZuXMnsbGxDzX3Q/fu3a1zLYjcuXnzJs8++yzPPvusJCeEEEIIIZyItGscT3pQiId28eJF3n//fUJCQoiKikJRFIKCgnj66ad59dVXbeaKEEIIIYQQQghnJO0ax5MEhRBCCCGEEEIIIRxO++BVhBBCCCGEEEIIIQqWJCiEEEIIIYQQQgjhcJKgEEIIIYQQQgghhMO5VIKifv366PX6TD/9+/fPcht76y9ZsqQQoxZCCCGEEEIIIYo+l3rM6K5duzCZTNbXt27don379vTs2TPb7ebMmUPnzp2tr/39/QssRiGEEEIIIYQQwhW5VIKiVKlSNq+XLVuGn5/fAxMUxYsXp2zZsgUZmhBCCCGEEEII4dJcaohHRoqisGzZMgYMGICPj0+2606ePJmqVavy1FNPsWTJEsxmcyFFKYQQQgghhBBCuAaX6kGR0a5du7hy5QqDBw/Odr233nqLtm3b4uvry+7du5k6dSpRUVFMnDixkCIVQgghhBBCCCGKPk1sbKzi6CAcYejQoVy9epWdO3fmarsvv/yS2bNnEx4enu1658+ff5jwhBDCKVWvXj1f9iN1pBCiqJJ6UgghsvagOo9tkSIAACAASURBVNIle1BERESwceNGZs2alettmzZtisFg4M6dO5QpUybL9fLr5CSEEEWR1JFCCJE9qSeFEK7IJeegWLFiBZ6envTu3TvX2544cQIvLy+KFy9eAJEJIYQQQgghhBCuyeV6UCiKwtKlS+nduzd+fn42yxYuXMiiRYs4fPgwAJs2beLOnTs0b94cb29v9u7dy4wZMxg6dCienp6OCF8IIYQQQgghhCiSXC5BsXfvXi5evMjChQszLYuKirIZ7+fu7s7ixYt5++23MZvNVK5cmSlTpjBixIjCDFkIIYQQQgghhCjyXHaSTCGEEEIIIYQQQjgPl5yDQgghhBBCCCGEEM5FEhRCCCGEEEIIIYRwOElQCCGEEEIIIYQQLuLmzZtcuXLF0WHYJXNQCCGEEEIIIYQQLmLEiBHExcWxatUqR4eSySP3FA+j0cj69euJjY2lS5cuBAYGOjokIYQQQgghhBDikRAVFeXoELLk1EM8JkyYQJs2bayv09PT6dy5M6+88goTJ07kiSee4NSpUw6MUAghhBBCCCGEEPnBqRMUu3fvpnPnztbXa9as4dixY8yaNYtt27bx2GOP8emnnzowQiGEEEIIIYQQQuQHp05Q3Lx5k0qVKllfb9y4kXr16jFs2DCaNWvGsGHDOHTokAMjFEIIIYQQQohHk8FgYNOmTSiKTEsonINTJyh0Oh3JyckAKIrCnj176Nixo3W5Xq8nOjraUeEJIYQQQgghxCNrxYoVLFq0iIsXLzo6FCEAJ09Q1KlTh1WrVhEbG8vy5cuJiYmhU6dO1uXh4eGUKlXKgREKIYQQQgghxKPp2rVrgOVBBEI4A6d+isekSZMYMGAAVatWBaBly5Y2k2Zu2bKFJk2aOCo8IYQQQgghhBBC5BOnTlA8+eST7N69m127duHn50efPn2sy2JiYmjTpg3PPvusAyMUQgghhBBCCCFEfnDqBAVAzZo1qVmzZqb3S5QowYwZMxwQkRBCCCGEEEIIIfKb0ycoVImJicTExNidYbZixYoOiEgIIYQQQgghhBD5xakTFKmpqXzyySd8//33REVFZbmePMlDCCGEEEIIIYR4tDl1guLNN99k6dKldO3aldatW6PX6x0dkhBCCCGEEKKIMZvNaLVO/YBDIVyCUycofvvtNwYNGsTcuXMdHYoQQgghhBCiCLp69SqTJk1i2rRp1K5d29HhCOHSnDpNaDabadasmaPDEEIIIYQQQhRRJ06cICUlhX379jk6FCFcnlMnKDp27MiBAwccHYYQQgghhBBCCCEKmFMnKD755BNOnjzJ9OnTuX37tqPDEUIIIYQQQgghRAFx6jko6tevj6IozJo1i1mzZuHu7p5p8hqNRsONGzccFKEQQgghhBBCCCHyg1MnKHr16oVGo3F0GEIIIYQQQgghipCbN29y8eJF2rRp4+hQRAZOnaCYP3++o0MQQgghhBBCFGGKojg6BOEAs2bN4vLly5KgcDJOPQdFQZgxYwZ6vd7mp0aNGtluc+rUKbp160ZAQAC1a9dm5syZUpEJIYQQQgghxCPq8uXLjg5B2OHUPSgADAYDX331FVu3biU8PByAoKAgOnfuzNixY/H398/1PqtXr87vv/9ufe3m5pbt8Xv16kWrVq3YuXMn58+f59VXX8XHx4fXXnst9wUSQgghhBBCCCFEJk6doLh16xZdunThypUrVK9endatW6MoCufPn+fTTz/l559/ZtOmTQQEBORqvzqdjrJly+Zo3Z9//pnk5GTmz5+Pt7c3derU4dy5c8ybN4+xY8fKHBlCCCGEEEKIR5r0DhfOwqmHeLz77rvcvn2bH374gUOHDrF8+XLr7ytWrODWrVu8//77ud5vWFgYtWvXpkGDBgwbNoywsLAs1z106BBPPPEE3t7e1vc6duzIzZs3uXLlSl6KJYQQQgghhHAScsNRCOfh1AmKHTt28Morr9CtW7dMy7p27cqIESPYunVrrvbZrFkz5s2bx88//8ycOXO4ffs2zzzzDNHR0XbXv3PnDqVLl7Z5T319586dXB1bCCGEEEII4VzU3gOu3ItAkjTCWTj1EI/4+HgCAwOzXB4YGEhCQkKu9vn000/bvG7WrBmNGjVixYoVjB071u42939h1coruy/y+fPncxWXEEI8CqpXr54v+5E6UghRVEk9+eiJjIwEIC4uzuU+9+TkZACuXbuGh4eHg6NxDFf7P8/IEWV/UB3p1AmK4OBg1q1bx8svv4xWa9vZw2w2s379eoKDgx/qGMWKFaNWrVpcunTJ7vIyZcpk6imhVmL396zIKL9OTkIIURRJHSmEENkr7HpSURS+++47OnToQKVKlQr12I6mNtL0er3LnZ/UYeyBgYEuV3aVq5YbnLPsTj3EY+TIkezbt49evXqxZcsWLl26xKVLl9i8eTO9e/fmzz//ZNSoUQ91jJSUFM6fP5/lpJktWrRg//79pKSkWN/btWsX5cqVc7nKWwghhBBCFE1xcXGsX7+eefPmOToUIYQLc+oeFEOGDCEqKoqZM2eyd+9e6/uKouDp6cn//vc/Bg8enKt9Tp06lS5duhAYGEhkZCSffvopSUlJDBw4EID33nuPkJAQ1q1bB0Dfvn2ZOXMmY8aMYcKECVy4cIEvvviCN998U8ZqCSGEEEKIIkEdwhwREeHgSIQQrsypExQA48ePZ+jQofzxxx+Eh4cDEBQURPv27SlZsmSu93fjxg2GDx9OVFQUpUqVolmzZmzbto2goCDA8mjTy5cvW9cvXrw4a9asYcKECTz11FPo9XpeffXVLOerEEIIIYQQQjw6XHlyTCGcjdMnKABKlixJ796982VfS5YsyXb5/PnzM71Xt25dNm3alC/HF0IIIYQQQgghRGZOPQeFEEIIIYQQovBIbwIhhCM5VQ+KEiVKoNVquXnzJh4eHpQoUeKB8zxoNBqioqIKKUIhhBBCCCGKHjUxIXOsCSEcyakSFOrEkzqdzua1EEIIIYQQouCo19zSg0II4UhOlaCYMmVKtq+FEEIIIYQQ+U9uCgohnIFTz0Exc+ZMQkNDs1x++vRpZs6cWYgRCSGEEEIIUfRIzwkhhDNw6gTFxx9/zKlTp7JcLgkKIYQQQgghhBCiaHDqBMWDJCQk4O7u7ugwhBBCCCGEeKTJJJnCVZnNZkeHIDJwqjkoAE6ePMmJEyesr/fv3096enqm9WJjY1myZAnVqlUrzPCEEEIIIYQQQhQRrjy8SVEUp0tKOl2C4vfff7cO29BoNHz77bd8++23dtf18/Nj0aJFhRmeEEIIIYQQRY48xUO4Klf+mzeZTNYnaDoL54oGGDJkCJ06dUJRFJ555hkmT55Mx44dbdbRaDT4+PgQHByMh4eHgyIVQgghhBCiaHDlRppwba78t5+eni4JigcpX7485cuXB2D9+vXUrFmT0qVLOzgqIYQQQgghii4Zhy9clSv/7dubSsHRnC5BkVGbNm0cHYIQQgghhBBFnis30oRrc7W//YzllQRFHkRERLBs2TKOHj1KXFxcpj8gjUbDunXrHBSdEEIIIYQQQjzaXK2RnpGrld1kMtn93Vk4dYLizJkzPPvssyQmJhIcHMzp06epVasWsbGx3Lx5kypVqlChQgVHhymEEEIIIcQjzdUaacKWMzZURcFw9gSF1tEBZOfdd9/F3d2dAwcOsG7dOhRFYcaMGYSGhrJo0SJiY2P54IMPHB2mEEIIIYQQjzS1q7ezPXJQFA5XTlA54zCHgpSWlmb3d2fh1AmK/fv389JLL1G5cmW0Wkuo6iyrffv2pXfv3kybNs2RIQohhBBCCPHIc7VGmrDlygkKZ2ykF6SM5U1NTXVgJPY5dYIiLS2NcuXKAeDl5QVAXFycdXn9+vX5559/HBKbEEIIIYQQRYWaoHDlRy66Mmfs6l9YXC05lzEpIQmKXAoMDCQ8PBwAb29vAgICOHTokHV5aGgovr6+jgpPCCGEEEKIIsHV7iILW66coHC13iMZkxLO+L136kky27Zty8aNG5k6dSoA/fr1Y968eRgMBsxmMytXrmTw4MEOjlIIIYQQQohHm6vdRc5Ieo04Z0O1sLhacsbZh3g4dYJi3LhxtGvXjpSUFLy8vHj77bcxGAysWbMGNzc3BgwYIJNkCiGEEEII8ZBcOUHhjI20wubKCQpXK3vG8jrj996pExQVK1akYsWK1teenp588cUXfPHFFw6MSgghhBBCiKLF1RppGcn8G679/+9qCaqUlBS7vzsLp56DYs+ePS5dUQghhBBCCFEYjEajo0NwGLVx7mpzEcC9pIwr//+7WoIiOTnZ7u/OwqkTFD169KB27dpMnjyZw4cPOzocIYQQQgghiiRXbqCqCQrX7EVgSVA44530wuJqCYqkpCTr74mJiQ6MxD6nTlB89913tGjRgqVLl9K5c2fq16/Pu+++y7Fjx/K0v88++4ynnnqKihUrEhwczIABAwgNDc12mytXrqDX6zP9bN++PU8xCCGEEEII4WzUxrkr9l1WkzOumKRJNVoa567WSM/I1cqeMUHhjD0onHoOih49etCjRw8SExPZsGEDv/76K/Pnz2fOnDlUrVqVPn360Lt3b2rWrJmj/e3bt4+XX36ZJk2aoCgK06dPp2fPnhw8eJASJUpku+2vv/5KvXr1rK8ftL4QQgghhBCPCmvj3AUzFGrvAVfsRWA0ptz91/WSMypXK7uzz0Hh1AkKla+vL/3796d///7ExcWxdu1afvvtN2bPns2sWbOIiorK0X5Wr15t83rBggUEBQVx4MABunbtmu22JUuWpGzZsnkugxBCCCGEEM5KbaiYFdebh0G9i5zxzrKrcNXeIxnnOXS1HhTWXhNarVMmKJx6iIc93t7elCxZEr1ej4eHx0NNopmQkIDZbEav1z9w3cGDB1OtWjU6d+7M2rVr83xMIYQQQgghnE1CQgIAyUlJLjdJvdpgS05yvu7uBc1VExQZkxLOOMyhICUnJ4NGAxqNUyblHokeFCaTiV27dvHrr7+yceNG4uPjKVu2LEOGDKFv37553u/kyZOpX78+LVq0yHKdYsWK8cEHH/D444+j0+nYuHEjL730EvPnz2fAgAF5PrYQQgghhBDOQp0sz2QyYTQa8fLycnBEhUdNTKQkO9/d5IKkKApJLtp7JOPkkK5W9uTkZNBaEhTOmJxx6gTFnj17WL16NevXrycmJga9Xk+vXr3o3bs3bdu2RaPR5Hnfb731FgcOHGDz5s24ubllud5jjz3Ga6+9Zn3duHFjoqOj+fLLL7NNUJw/fz7PsQkhhLOqXr16vuxH6kghRFH1qNaTGZ+YFxoaip+fX6Ee35EMBgMAiUmJLnV+Sk1NJT3dBEBkRIRLlf3OnTvW32/cuOFSZY+IiLD0oNBqiIyMLPSyP6iOdOoERY8ePfDz86Nr16706dOHDh06oNM9fMhTpkyxJj4qV66c6+2bNm3KDz/8kO06+XVyEkKIokjqSCGEyF5h15MZb/yVL1+egICAQj2+I0XHRANgTDW61PkpOjra+nt6eppLlT3jMCYPDw+XKrtZUUCjBY2GtPR0pyu7UycovvvuO7p06YKnp2e+7XPSpEmsXr2a33//nRo1auRpHydOnJAJM4UQQgghRJFhMpmsv2fs/u4K1LKnpaVhNBrzte3hzNShDRpcb5iDOucKuN7fe2xcnGWIh1ZLfLzB0eFk4tQJih49euTr/iZMmMDKlStZvnw5er2e27dvA5anhBQrVgyA9957j5CQENatWwfAihUrcHd3p0GDBmi1WjZv3szixYt599138zU2IYQQQgghHCU9PR2NmzuKKY24uDhHh1NojEYjiqLgrtGRpqQTHx/vcgkKnRaSXWz+DTUpodEoxMfHOziawmWIiwOtFrRakhKTSEtLw93d3dFhWTlVguLHH38E4Pnnn0ej0VhfP8jAgQNztN7ixYuBzImPSZMmMWXKFABu3brF5cuXbZbPmjWLq1ev4ubmRnBwMHPnzpUJMoUQQgghRJGgKArp6SbcPH0xmdKIjY11dEiFRm2oumt1pJnSSUxMpFSpUg6OqnDYJCjS0khPT8+X4fSPAnXeEa0O4uJc5+/daDSSnJQEvj6WJAUQExNDmTJlHBzZPU71FzhmzBg0Gg19+vTBw8ODMWPGPHAbjUaT4wRFTirb+fPn27weNGgQgwYNytH+hRBCCCGEeNRYHjGpoNV5YDLiUneU1Ua6u0Zn89oVqI10dy0kY/l/L1GihGODKiQxMTGAJUHhSgm5qKgoyy9uWmuCIjo6WhIUWTl27Bhgmagk42shhBBCCCFEwbDORaB1t3ntCtRkjPvdsrtSckYdyuOhA1ItDXVXSlBo7rbRkxNTXGbuETUxow7xANvJUp2BUyUogoKCsn0thBBCCCGEyF/3EhRadB7eLpWgyDjEI+NrV6A2Vj20915XqVLFgREVnri4OMuDLLT3XjtTL4KCYu0tkiFB4WxzzmgdHUB2GjZsyMaNG7NcvnnzZho2bFiIEQkhhBBCCFG03Jsw0A03D1+bJxwUdWqPCY+7PShcqewGgwE3DbhpNdbXriImJhqNVrEmKFxlmEemBIVGc69XhZNw6gRFeHh4tlnMxMRErl69WogRCSGEEEIIUbSojXSN1g03T1+XGuagNtg8tO7otG5O11grSAaDwTIVgebea1cRExOTsROByyQooqKi0Li5WQuu9fG+Ny+Fk3DqBAVYJsHMyoULF/Dz8yvEaIQQQgghhCharF28tW5oPYphMLhOgiIyMhItGtzQUtKjuNM11gpSTHS0pQfF3V4UrtJIN5lMGAzxNkM8XCUxFRERgcbXx/pa8fEiIiLCgRFl5lRzUACsWLHC5vGis2bN4vvvv8+0XmxsLKGhoXTu3LkwwxNCCCGEEKJIUe+ca7Ru6Lz8iYu76OCICk9cXBxuWjcA/HV+LtNIB4iOikJ3t4Fe3EvrMsmZuLg4zGazZYSDFtDgMmWPiY3B7HVvMlDF25toJ0vOOF2CIjExkdu3b1tfq39AGWk0Gnx8fBg6dCiTJ08u7BCFEEIIIYQoMiyNcg0ajRZ3b3/irjvXpHkFKSkpCTcsCQpfNy/iE1xjkkyTyUSswUDxu21Vfw+z0z3NoaDcuXMHAI0baAAvX61N+7Moi4szgKcHGFMtb3h6YLgV6dig7uN0CYoRI0YwYsQIABo0aMDHH39Mt27dHByVEEIIIYQQRZPBYEBztxeBzsuf1FSjyzx2MSE+Ae3dfv7ebl7cSnCNHhQJCQkoioLb3dH0xdwhLs41yq4mI+7+yePhY+LWrVsOjKjwxMbGQrnS9xIUXp4kJiRgMplwc3NzbHB3OV2CIqPjx487OgQhhBBCCCGKtIwJCjfPYoALPXYxJgadxlL24u7FiI2JRVGUbOfBKwrUYT1qgsLHQ8NVF5kkUx3OoU6Q6ekDUVHO1YugIBiNRhITEtD4VEKJuzsxro8PiqIQHR1N6dKlHRyhhVNPkrlp0yYmTpyY5fKJEyeyefPmQoxICCGEEEKIoiUyKgqN1nLf0t1bD+AS3f1NJhNRMdG43y37Yx56jKlGl3jUqDoxqtvd1mAxdzDEW+6kF3UxMTG4uWtQc1Du3paEjaIojg2sgFknwyx2b5JM7k6YqQ57cQZOnaCYM2cOSUlJWS5PSUnhyy+/LMSIhBBCCCGEKFoiIiLQuLkD4FGsFGB5ukVRFxMTg6Io1h4UJT0syRlXKLs1QaEO8fDQoCgKiYlFfw6O6OhoPL3v9ZDx8FZITzfde5pNEWVNOnp733vTx/K7Mz3FxKkTFKGhoTRq1CjL5Q0bNuTMmTOFGJEQQgghhBBFR0pKCinJyWjvJijcfSyNdFd4qoE6zEFNUPjpfAGKfEMVsPYS0WotDXUfy38/8fFF/xGzERF3cPe+11PE426HgqL+N6/+vSsRUZCQCAmJKBfDAOf6m3fqBEV6ejrJyclZLk9OTsZoNBZiREIIIYQQQhQd1gbp3TkotO4+aDRal2ioqr0F1Ekyfdy8ALLtwV1UqP+/1jko3C2/uMLwlojICGtSAixzUEDR7zljTUJcvwlJyZaf0+eBe8kLZ+DUCYo6deqwbt26TI8ZBTCbzaxbt45atWo5IDIhhBBCCCEeferNQM3dRrpGo8HNwzvbm4RFhZqgcLvbg8JXZ+nu7gqN9NjYWLzctagDHYp53Hu/KEtPT8cQF29NSoDr9KCIjY0Fjebe7KAqrcap/t+dOkExatQoQkJCGDhwIEePHsVotDzy6OjRowwaNIiQkBBGjhzp6DCFEEIIp3b79m327dvn6DBEIUtMTJSepuKB1EZ6eko8qQmR3Dq6BjQal+hFoN5RjkuLJ8IYw647BwHnuptcUGJjY3HXKEQnW37+uWW5IexMcxEUhNhYy1NajIkKKYmQkgi3zmtAU/Qnho2JiUHr7ZV5gVbrVGV36seM9unTh8uXLzNjxgy2bdsGWLK66qN/Jk2axIABAxwcpXAG6qy7Rf2RUEKIvDGZTIwaNYqYmBheeeUVnn76aZepLxRFYdy4cRiNRsqVK0dwcLCjQypUcXFxGI1Gl3hc4v3Gjx9PUFAQU6dOdXQowompvQVMxnhMRrh9fC1anadLDPFQExQxaZaExPpbf6BB41Tj8QtKTHQ0aSaF+LtTMewNtyQonOlOekFQk08J0RpSkyzXAddPgUZb9OffiImJQckqQeFEiSmnTlAATJgwgb59+7J+/XrCwsJQFIUqVarw3HPPUblyZUJDQ6lTp46jw3QK+/btIywsjBdffNHRoRQKk8nE4cOH+fbbb4k3GKhUqTJNmjahatWqNGnSpMg2PhRFwWg0kpKSkmmZVqvF19cXNzc3B0QmClpaWprdIW9arRZ3d3cHROT8oqOj+fPPP9m0abO16+bXX3/N9h076NK5My1btsTX19fBURactLQ0vvnmG+td9BkfTWfSlMlUr17dwZEVDkVRGDVqFKmpqfz44494eHg4OqRCM23aNCIjI4v8mGp7FEXhq6++4qmnnqJ+/fqODsfp2R3OoHUjPr7oD3MwGAxo0WDm3uMldRo3l+hBER0dZXnEaIanimo1Rb8HhXo+vL+ZoNFg99q6KIkzGFA8PSD9vkfJarVOlZRz+gQFQOXKlXnttdesr2/dusXPP//MqlWrOHXqlFN1SXGU6OhoPvvsMwDatm1LUFBQkWygp6WlERUVRUREBJs3b2b//v3WZWfPneXsubMAPPvsszz++OOULl2akiVLotM9En/q2VIUhTFjxnD79u0crT9mzBg6depUwFHljytXrrB48WIURcHLywsPDw88PDxwc3MjPT2dtLQ0UlNT7w7zSkFR4Pr16wBUqFDBuh8PDw+8vLxwd3fHw8MDnU6HoiikpaVZh4gZjUZ69OhBq1atHFXcXDl16hSXLl3i77//5tixY1mu17ZtW4KDg6lTpw7VqlUrxAidi6IoXL9+nSNHjnDw4CHOnTuLoij4lqqKZ/EK6DyLoa/SkmuntzB37lzmf/01DRs0oEWLFjRp0oRSpUo5ugj5QlEU/vnnH75d8i3Xb1ynpHtx/N2LkZCcxJQpU+jWrRv9+vXDz8/P0aEWmMTERL799tt7yZnp03l17Ngi83/8IBnvBN64cYPy5cs7MJrCNXnyZM6fP8+hQ4dYvny5o8NxevYSFBqNm0vMw5CQkICbxg2zkm59z02jLfJlVxSFmJhYvO8b7K/TFv1hDtYkxP3NJA1FfkhcnCEOivlA+n3DtzQap/qbf2RabQkJCaxbt45Vq1axb98+TCYTtWvXZty4cY4OrcCZzWbi4+MxGAwYDAZiYmKIjIzk9u3b3L59m6vXrhMVGWFdf/z48RTz8yOoYhABAWUpW7YspUuXRq/XU7x4cYoXL46/v7/TNNrPnz/PpUuXiI2NJSEhgeTkZJKTk+8+9iqF5OQkkhKTSEhMJCnZ/njIyj7l6VehC5+eXwLAhg0b2LBhg3W5r48vxXyL4ePjjZePN97e3nh5eeHt7Y2Pjw++vr6UKFGC6tWrU7ly5cIodrbMZrO1UZ6xcX5/cqKklyXb3baSG3vDTURm+HgOHDhA7dq1rY31jI12Z0terV69mlOnTj1wPZ2ngm8JS5Y77W5HgqikC9blxghINjy4bLNmzWL16tV5jrcwmEwmIiIimDZtWuaFnp7g7gb+/nDjFgB79+5l7969ACxduhQfHx+090+CVEQlJCRw/Phxjh07xt9//0NUlOWOsXfJipRp0AN9pRZ46ctzYcsMAErV7MBjNZ4iKfIicVcOc+r83/z9998ABAZWpHHjRjRq1Ig6derg6enpsHLlRXp6OocPH2bd2nWcPXeWMl6P8Ub1f7Px5m4A3qzxMquubWbDhg3s2L6Dzl0606VLlyI1/OHWrVts376dLZs3kZScjN4TdG4QeuoEr44ZQ/unnqJLly5UqVLF0aEWiLS0NDZv3kx4eDhgeTDD5CmTGfnKSFq1auV09X9+MxqN3LplqReTkpI4ceKE9KJ4AHuTYWo0WpJTiv4kmUlJSZYneNzrQIFWoy3y828kJSWRmpZGMW/b9900EF3EJ4pU51zR3HeJpNEoRX6IR0J8Ajymh8T7/r61WlKTk0hNTXWKnobO0ULNgslkYvv27axatYpNmzaRnJyMRqNh+PDhvPrqq1SqVMnRIeaaoigkJycTFxeHwWAgLi7O+nt8fDwJCQnWH4MhHkO8gYT4eLvdunWevngUK4WHX1XKVepAzOUDKOZ0HqvenpSYcK5E3ORC2N+kJtkfS+brWwx/f3/8/f0oVqyY9cfPzw9/f3+bZEbx4sUpVqxYvl7YXLt2jekffcStDI1uL50n3m5eeGs98dR64KX1oISbD+W1JfDx88avhC8lPYrzmIeekh7FOWO4xLobu4g2Ggg1XGR45b40K1GPmNQ4olJjiUqNJSbVQHx66MdAbwAAIABJREFUIkmmFJJjjaREG4k2GzCa00gxp5CcbiTFdC9jWqVyFd6e+jYlS5bMt7JmxWQykZKSwj///GPtAZMTvWq5UauUlh9PpJFqgsYBWlpW0HI1TmH5iXTijPD33/caXVkpX64cH3z4Id7e3nh6ejrswnXs2LF07dqV1NRUduzYYW1oZ6JoqNPe8l04uU2DyQQ1WincfXQ7Z/ZqSM6iV6avry9vvPEGXl5eNr0unMG1a9d4/fXXc7SupkNrlOOnwWRC07YFXL+Fsu+QzTpDhgyxu+2SJUvQ6/UPHa8zuHnzJn/++SchISGcO3cORVHQeXjjG1CHwOrP4le+AR7FHstye41Gg2/paviWrka5ps9jjLuB4fpxYm+cZMPGTaxfvx53d3fq1q1L8+bNefzxxylRokQhljDnzGYzZ8+e5a+//mLf3n3EGeIo5VmCIUH/4slSzdFpddYEha/Om5cq9+Lpsk+w9sZO1q5dy9q1a6lXtx6t27SmZcuWFC9e3MElyr24uDgOHDjAnj27OX36DBoN1C2loVN9HevOWrqyjmisY0eYiT92bmfbtm1UCgqi3ZNP0rp16yKRoImOjmbnzp1s3ryJ6OgY3DzA21+hWguFC/sTmT17NqtWraRr1260bdu2yA1tMhqN7Nmzh59/+cXSyPD1Rqtz55133+XJdu3o1asXQUFBjg7TKdnt1q7RFvnu7mBJzmjvu5WuRUvy/Q24IkYdwuJ232Wfmxbi4or2HBRqEsLeEA+DwXmGOeS39PR0jCkpaDw8MubjLLT3HjFbGO2fB3HKBMWRI0dYuXIla9asISoqitq1a/Pf//6XZs2a0bNnT9q3b//IJSdCQkKYMWOG3USDSqvzwN2zGFoPH7Qevug8y6ArU5VSQf7ovPzRefnd/dcfD98SuHncu7iIPLuD4ArF6d+3D6vXbSbysWpUbPUyAOZ0I6mJ0aSnGO7+xFt/T0qJJz4uAXNkJCbjFdKNCZjSsj8hDR06lB49euS47KmpqVy/fp3Y2FgMBgMJCQnEx8dz7Ngxa3Li8waTKe5ezPqYp5z65vKvBNSowIABA1i5ciXnroTRtlRTvL3LUN475xec6eZ0YtPi+e+JT7gcdpmvv/6aatWq4efnZ03alChRggoVKuS454nZbOa9997jxIkTuSoTQJMALWWLaXDXWk4W7lrLDXMPNw0lvTWU9dWw/2o6fhXr0LffADb8torySad5oqKOSa3dCYtVMKZDqlkhzQTpZstPmhm2XLw37uzGzZu8/PLLOYrpnXfeoWHDhjkug9FoJD4+npSUFIxGI6mpqSQnJ5OUlMSePXs4cuQINWrUwJhqJC3N0lMkPS2dmJh7J0atm0KJ8sDdJyKVrW6pUm+dh6BydenfbwCr167EoDlJQHWo0lTB0wfS7uabUpMhPsJS6SYmJvLBBx9QqtRjNj1Kzp+/QGBgIH369MHX19earFF/fH19c3Uhn5aWxo8//si1a9esk7eq/6rURJBGo8FoNGb7N6Jp0Qjc3aFcGTReXpjPXaROQHkG9OvHynVrCXUzo32xD0piEtyOhLQ0lMNH7e5r2LBh1K9fH09PTxRFsRuXOgmxRqOhWrVq9OnTx2nmNElOTubAgQNs376d06dPA+BTqgql63XHr3x9fEtXRaPN/WlNo9Hgpa+Al74CZep2xZxuJOH2WeJvnOTM5eMcPbqIb775hqZNm9KpUycaN27s8B5oqampnDx5ksOHD3PwwEFi42Jx1+po4F+TttV60KB4jWzr00DvAF4NHkSUMZY9kUfYf+EoX5/8mgULFlC3Tl1atGxB8+bNKVu2bCGWKufUoTx///03hw8dIvT0aRRFoYyvls7BbjQtp0XvpV59Wuq8Et4a+tbW0a2awtFbZkJuXWPZsmUsW7aMqlUq07xFS5o1a0aVKlUemd5HMTExHDlyhL/++ovjx4+jKArFy0KtJ81cD9WgAbz9od7TJiKvwM1z11m4cCHffruEZs2a88QTT9C4ceNHNlmRlpZGaGgo+/fvZ9+ff5KUmIjmsRKgLw4e7ijtW8GJ0+z5cx+7d++mRs2atGvblubNm1O6dGlHh+80jEaj5Xaycu8aVaPVkJqSaj0nFFXJScmWHhQZaDVakpOLdnJG7SGive+/VquhyJc9yx4UWop0zxm13HjYmbPs7oeRmJgoCQp7mjZtyuXLlwkMDGTw4MH07duXunXrAli7Kz6K/vnnnyyTE//P3p3HR1Xfi/9/nZlJJvu+Q0ggIAlhCQmEXRBUcKtCq6jdLpUWvVV7rSvWe/F+rfpTaqu2Vq1Ie62ioEXKpiyyRNYQIBASCGsI2ffJOktmzu+PIZOEBEggyYTk/Xw85pHMmXPOfD5ZzpzzPu/P++PqFYzeNxwXD390ei+0ei/7V1fP5u8vflUuc9Jkqa/kgR/9kKlTpwIa3vuq+Y6qRqfHzTccfMNRVRWruR6rqcYejDDVXfxa2/zcaMBUXYTRUABqmxgbKSnfdypA8d8v/TenTp+64jrbSvfjqXXHW+eJv6sPYfogAlx9r/qhaLaZ+cn8X1zsNyz//z7oUJtUVaXEVEGJqZwqS409w6KxOZUxLS2NtLS0NtuNHz+exYsXd+g9FEXh1Kkr9/tyDhXZePPWK6dY7c+3sejZ+Y6+f7h0CZMiQadRGBrQ/s8tq/TyAbKr6czc0CUlJTz66KNXXe/kyZMoiorWFXQXH95BUFMO/uEwdJKKrp3jaPEZheefau77G3/KJGyYPTgxOKn5b1ZV4cJRKMgGd2/7/utMZRhqodECqtX+c8rLy+Odd965bDufe+45Jk6c2KG+p6ens2bNmg6t264Af5Rxo8HHG/Subf8HTp1j/n/91tH3JW//EW6KQfH0gCEX7w4OGwImE1QaUA8eBUNzWklnAmZpaWkkJCRw0003XXt/rpPVaiUjI4OUlBT27N2L2WTCzSeU8MT78Rs8EVfPy2dJXCuNTo/PgNH4DBgNPIyxKp+KM7tJP7abAwcO4OPjy803T2PatGkMHTq0x07eTSYThw4dYvfu3Rw6eAijyYhe68oon5sYN3g2CX6xuGvbqc59BYF6P+YOuJX7ImaR21DIgcpjHDybyfLM5SxfvpyoQVFMmjyJKVOmOD3zyGw2k5GRwcGDBzl0MI2SUvtQnjAvDTOjFUaFaAn3Uq76+/BwUZgcqWVyJJTXq2SU2DhWmsuqlTmsXLkSXx8fxiYmkpSUREJCQq+6eLfZbJw/f57Dhw+TmrqfU6dOoarg7qUQEWcjeLCK+8WyIgVZzdspGggeDEHRVuoqoOSchYOH97F37160Wi0jR45k/PjxjB07lrCwsF57QaqqKsXFxaSnp3P48GGOHj2KyWRC0elQB4ajTEqE0GDYkgKA4uqCkjQaNX44ypkcTp+7wMlly1i2bBkDBg4gKdH+O46Li7vhhnN1JaPRiKJoUFsEKFA02KxWLBZLr0j57i71dXXtBijq6+uc1KKeYTabgbZZBBrAbLH0fIN6kNFoRNG0LUFBHy+S6Ri+om/n//lipKq3FIftdQGKs2fPEhUVxUsvvcSdd96Jh4eHs5vUJR555BHmzJlDXl4e5eXlVFZWOmpKVFfXUFNTQU3Jeapqa7FZrZfZi4KLuxc6N1907n64eAah9wnFzTcc/5ib+Wr15wCs3bwHz+A4yk5sxVRdjLm2lMaGShobDFiMNai29vevKAoenvZhHiHB3vjEJF4cAmIf4hEYGEhYWFinx+3e/8D9/PWvf3XUP9DpdOi0OsxmM0ajkYaGBtYX7WhzN3egRxgxHpGE6gMJ1gcQrA8gVB+Ih675BHx6cDL/WvUVAN+u3sj04OQ271/bWEexsZxScyWlpgqKjeWcrDtPsbF1ZXONRoOXpxfubu64u7uhc3Gh0droKNKoKAr33Xdfh/utKAorVqzAarXyzDPPcP78+Q5v6+kCz201kxim4f4RWrSXhriBCQM0fPXlSgA2rlnFhAGXv+NXWGvjT/sa8e/ctQsAzz//PBMmTOjUNv7+/syYMYN9+/ah0WjQaDQoitLu2D5VVWg0QWOLukS+oSoocPaAgtYFtC6gc7H/fXgFQmiMyqqLfV/975WExqg0VENZrn28daNZwWrB/mgEnxAwFHXshNvHxwebzeYIKIaHhzN8+PAO9338+PG8+uqrVFdXO07yGxub/46avh46dIj09HSCgoMpK22uIUNFJeqWFJTEUdDYiOrthRId2fz6sMGs/PJLAFau/TcMa/5/VFUVzuSA0QQaDeqhtsEIH19fqg0GJk+eTFxcHDqdrtX/ZlO2hKqqBAQEOG22h/LyctauXcvOnSlUVxvQurrjO2gC/jFT8QwZ1qMXUG5+A4hIeoDwsfOozs+g8sxuNn7zLevXryckNIxbZ83sts8rq9XKkSNH+P7779m/bz9GkxEfFy8m+o4mcdAI4ryH4Kq5/hlcFEUhyiOCKI8IfjTgdoqNZRyuOs7BiixWfrGSL774gsHRg7l5+s1MmTKlxwpNVlVVceDAAdLSDnD0yBFMZguuWoUYf5gSqyU2UIO/+7X/LQR6KMyI1jIjGmrNKtllNk6U15K6O4UdO3ag1WoZERdH0rhxJCcnExYW1nWd66CSkhLS09M5cuQIGccy7GOIAa8AGBhvw38gePi2vdBoj6LYj6FegSpqopWacqjIVzl59qijCG9gYACjR49h9OjRJCQkOH3IT3V1Nenp6fY6M0ePUn5xVhKNlye2QREoA8IgLARNi6ymS2+tKG56iB8O8cNRDDWQX0hBQTEF69ezdu1atDodscOHM2rUKMaOHUtMTMwNk0XTFcxmc5s/IAV7//t6gKKmthaXSwIUWkVDVUM9Vqu112QQdrWmYpCX/pUriv1zp7Gx0emZgt3FZDKh1SpceqRQFLCY+25wxjE7y2WmGW21jpMpVVVVbW+RO9GKFSv48ssvSUlJwd3dndmzZ/PDH/6Q2267jcLCQsaMGcNnn33GnXfeeV3vs2zZMt59912Ki4uJjY3l9ddfv2JV/127dvG73/2OEydOEBYWxm9+8xt+8YtfXFcb2tNUo6KpHkXT16ZgRlVVFVVVVZSVl1NcXEJdbfMFn6J1BVRQbY4ghKteT2hoKEGBgfj7+zsKZXp7e7cavuDt7Y2np6fTPpBtNpujNkdFRQXnzp0jdX8qubm51NS2vqj1c/UhxDXAUYfiQEUGGkXDTwbdQ4mpgjJTJeWWKsrNBopNZdRYWkfB/Xz9iIqKYsLECQwaNIiAgAB8fHxwd3d3yl2j1NRU1q5di81mw83NDYvFTGZmVqt1EkI1eLmCj17B2xUG+WkI9lD46wEzZis8Os4FN52CTVXJLlcxGFWqTSo1ZsgstVFrbt7X0KExeHp6YbVasVqthIeHM3/+/B5LdzUajdTV1Tlm1DCbzZjNZoqKinj//fcBGD58OEZjc7HUhoYGLJbmCtthw1Qq8u3ZqKExKhot5B5t/tu1B9s8cHdzw83dHXc3d8rKyqisrGTevHmMHj3aMVOIq6srer0eDw8PPDw8nPI38P7777Nly5bLrxARCn6+KDod6LSop86C1WY/2bZa7YEMSyMUlULl5ceOzp8/n/nz53dDD7rWjh07+NvfPsJkNuMzcCx+gyfgM2AMGt31nSQ3FckcOrtjWVBX0miqw5B7kKpze6ktOk5AQCBPPfVfjoy/66GqKqdPn2b79u3s2bWb6toaPHRujPMbycSAMcR6D+70cLjXT/wNgMWxv+p0eyrMBlIrMthXeYRzdXkAjIgbwfQZ9voNXR2YMZlM7Nu3j23btnHsWAaqCv7uGmIDIS5IQ4y/gsulA6ev4IM0+wnno+M6Hsix2lRyq1WySm2cKIfiWnvAMmbIEG6ZOZNp06Z12wwoqqqSm5vL/v372bNnjyN7VO+h4BNiwzdUxTcMXN2vvJ/M7+w/o/hZHTvNa6gBQxEYihVqSjVYTCqKAsOHxzJ58mSSk5N7pFZHVVUVWVlZHD9+nMysLHJyckBVUfSuqCFBKGHBEB4K3pevi2XbbK+5orl9+hXfS21shOJS1KJSlOJS1Ar78dPTy4uR8fHExcURFxfHkCFD+uyFKsDSpUvZn3oQm7X5ZMHVOwRzTQn/93//12dn+zGZTDz00EMEufpRZm7+7AzVB1JsKudvf/tbn531Z+fOnbzzzjsM9Ia8FqfZge5Q3mC/TuoNqf7d4c9//jN79u9E72mlurT5GKL3VDHVKXz++ed9LqPKaDTy0UcfsX3HDpS5d9hrl5W0uFEbHIhSWcW4sYk8+eSTTs8c7HUBiibFxcWsWrWKVatWcezYMXx8fJg6dSrffPMNn332GXfcccc173v16tX86le/4q233mLixIksW7aMFStWsG/fPiIjI9usn5OTw+TJk/nxj3/MwoUL2bdvH08//TQff/xxp4Y6dIfa2lpyc3PJzMzk88/tGRR33nkniYmJREVFERAQ0GtTNTuqvr7eMWNJQUEB+fn5FBcXU1ZSSml5WZvMC51OR1BAIEEhwYSFhTFw4EDCwsIIDbXPaOLmdg1pBD1MVVUOHjzIli1byMvLw2ZtxGCoxthi+qMZURrSi+wnzYnh9ovzAwU2aloEI3y9vdG66PDx8SU5OZmZM2fesMXgmj5Mr+buu+9mwYIFN+zfvaqqNDY2sm3bNj788EMAPL29MBlNNF4h7dLF1RVXvSt1F++uPv300yQnJ/fKWVsuR1VVPvroI7799lu8QoczcPIj6L275u+14vT3FB2xD70JiJmKq1cQAUOndcm+60pPk7f7I0w1JSxcuPCaP5+sViu7du1i7b/Xci7nHC4aF8b6xjIxYAyjfYfjcg31NQC+LzvI1/lbAZgWlESQ3p9pQUnXtK8iYxn7K46wt/IIhQ2l6PV6ZsyYwdy5c6/r2GI2m0lLS2Pv3r0cTEvDaDIR6KFhbCiMCtUQ5nn1oRvtSSuwsvli3Z1xERoC3BXGRXT+QrOiwT4UJL1YJb/ahlarZcyYMUycOJFJkyZd98lcU1Bq9+7d7N27h9KLw1d8gsF/gA2/cHstic78CDoboGjVHhvUVUJlgUJlvoa6i6eKUVGDmDRpcpcO+bHZbGRlZXHgwAEOp6eTd+ECAIpOC4EB9iEbEaH24W/tZBO2u88OBigupRpNUFiMWliCprQc28XjqZu7O6NGjiQxMZEJEyb0iWLDFouFnJwcMjMzWbFiBarWDaupeZpBN7+BGKvyGD9+PLfffjtDhw51ejZNV1BVlaqqKo4fP87GDRvJOp5FpHsYFxqKHOtEewwgpz6foTFDuevuuxg5ciT+/v43fFaNwWAgLy+PU6dO8a+vvoJGIyEeKudaXAoO8Ib8GogcOIB777MXlh0wYADu7leJiPZyLQO/a/69Bnd/I1aL2ipA4e6r0mBQHOfLY8aMuSEDFaqqYjAYyM/PJz8/n/Pnz7MzJYX6ujoYHoNmfAK2b7czIiTMUcMvq6QIJSIM9WgWejc3bp42jejoaAYOHMiAAQPw9/fv0XPJXhugaOn48eOsXLmSr776ivz8fAICArj99tu54447mDVrVqdPDGbNmkV8fDzvvvuuY1liYiL33nsvS5YsabP+kiVLWLduXasZEZ544glOnDhx5buePeyDDz7g+PHjHbqI6yvOnDnDs88+22pZX454b9u2jb/85S8AaNv5oLReHJYQFhbGG2+80SfvethsNqztDIPSaDR9+g4X2C9g33//fbZt2+ZYdt999/HjH/+4T/R9/fr1LF++nOARcwhPfOCyNXeuxelNr1NXnO147hk6vEsyKZpYLUZyv/+Q6rzDvPzyy4wePbpT2xsMBt584w2OnzhBhHsItwZPYlJAQqshbdfq9RN/40TtOcfzWK/B15RJ0ZKqqpytu8C20lT2VaajaDU8+uij3HLLLZ3e1759+/jwg/cxVNfgpdcQH2TPGhvsr6C5zhOiD9IsnG1xmjPET+lUJkV7CmpsHCqycawEKhps6PWuPPzwj7n77rs7fQLX0NDAxo0b2bJlMyUlpSga+xC3gAEq/gOuniVxOSVnITdDQbVByGD7bB4hQ65tX2DPrqjMh8p8DdUXR6QNHhzN7NlzmDVr1jUdf6xWKzt27GDVl19SWlJi/38PCYKwYHtQItD/mo4B6pkc1PRMsNkgJhrF1xslJrrT+wFQ6xugpAy1qARNUSm22jo0Gg1Tp07lwQcfdMqQn46wWCzU1NRQWVnZ6lFRUUFlZSWlpWVcuJDr+Cz1Ch2OzWqhvuysYx+eocPxDh9B8dF1qDZ7BmNgYBAREeEEBATg7+/f5quvry9ubm5OC4rbbDbq6uocM+Q1ZeU23eQqLrJ/NVvsd3IC9X7cHjyFQ1VZZF9yjJwUOJaNxTspNtrrb7noXAgJCSE0zH6zKywszNHnpoeXl5fTPouNRiNVVVUYDAZHtnVT//MuXODChQvU1DYHoKL9NPwoTsvq441tjpHTo7V8nW2jqqG5JklwUCADIwcRERHh6Lefn58jM9vX1xcXl+sfbngtrFYrNTU1jtkRKyoqKC0tdTxKSoopKyvDfHH4hk8wxEywcXqvQmRovOMiPbc4E98QKD6jodFsLw7r5+9LSHAIISGhBAUFERwcTFBQEH5+fo4h8D0dxLBarVRVVVFRUeF4lJeXU1FRQUFhIXl5efZgxEWKTocaHoISN8yeKaEo2DZs5X8v1jPbtWsXS97+I5q7bkUtr0Q9fgolvwi1xU0xN3d3Bg4cSES4/f8/MDCQgIAAx/d+fn5dOiTohghQtPT999+zcuVK1q5dS01NDW5ubhQWFnZ4e7PZTHh4OB9//HGregLPPPMMWVlZbNy4sc02d9xxB/Hx8fzhD39wLFuzZg0LFy6ksLDQaf+Ql1JVFavV2mfHjF1OdnY2hw8fRqfTkZSU1Gfntheir1u8eDG5pQ0Mu+t/u/wE99Q3rxId7OI4EckptTDsjt916XvYGs1krXqcW2fdwqJFizq8XV5eHr//f69QWVHFfwy6l8mBY9sUbbsevz/+AS5Rno6+W87X8VLc1YvYdlSF2cBHOV+SVX2GH/7wh/z4xz/u8LYpKSm8/fbbRPpomB2jYWjA9QclWvrrATMeA0Y4+l6fn8V/ju+a8fSqqpJXrbL1nI3jZTYeeOABHnzwwU7t43//92WOHDmKbwgERdsIGGgv5nu9jm1pfeJ9oTiTkbd1zemeqR4qLkBpjpa6SpV77rmHBQsWdGofmZmZvP/BBxTk59tn3YgdBgPDUVyu//ylvTuDmjmdD5xdSlVVMFSjns5BOX0OjQqzZ8/mpz/9aY9eoFgsFnJzczl79iylpaXNF+PV1VRV2aetb7hMgUcXN2907n7o3P1w84/EI2gwHoHRuHgGcfrb19o9RlotDTRU5FJfdpaG8hzMdWVYGwxYGqqwWRvbvIdO54KPry++Pj74+vo4pqv39/cnKiqKmJgYfHx8rrnvTXeEL1y4QGlpqf1CvMpAtcFAdW1NuwXp9VpXgvUBhLgGEHKxplmEWwix3oPRKJrLHiNtqo1TtefJbyihxFROqamCEksFJaYKjC0LZ12kKAo+Xt72PvvZL9qDg4OJjIwkKiqKgQMHXnM9j6YZ8XJzc7lw4QL5+flUVlRgqKqkqroak8nc7naerhqCPSDEE0I97bPAhXgq+Ort7b3cMdJqUylvgJI6leKLj5I6KGtQMTe2fyzx9PDA19cHP3/7RWtkZKTjERoaes3Bm5qaGnJycsjJyaGoqMjxN19VVYnBYKCurr5NNjWAq5sGVw8brh4qek97oNY/ojnwe+Rbheef+n+Oi/Q3/vQ/jJmjYrNBdYl9FjhTnf2YZ2nQYqyztZzoxkGvd8XHx+disMYesGn6e4+OjiYsLOyag7gXLlwgOzubEydOkJeXR1lFOdVVhrb91WjQuLth8/QAX28UH2/w9bYXXPdsO3z5asdJVVWhwWgvsl5dg2qogeoaNLX12Oob7AHgFhRFwdvHh8DAQAZERDB8+HBiY2OJjo6+pr7fcFey06bZK6e/9dZbbNy4kVWrVnVq+/LycqxWa5vx9sHBwZSUlLS7TUlJCTNmzGizfmNjI+Xl5e1G0K919gbReRqNhqQke7pyY2Oj/OyF6EZdVTTz0v/TkydPkp2dTciozt+F7ghbo4n583/imP3k9bc/7vL30Ohc8QyLY+vW70hISOjw+N3Vq1dTUlbKf8c+xlCvQV3ermud7aijAlx9eXrof/DH0//Hv/71L0aMGIGXl1eHtl27di0hngqPJmk7VVeio8xWWDC/9WxHXUVRFCJ9FX4+RuH/jqh8s3GD47OoI7Zu3cqRI0cJH64SPbZr7xVZrfaaM80zHf1Pl+1b7wHhwyHsJivHdyps2LABLy8vEhISOrS90Wjkld//HqubHmXaBBg0oGv/563WVn1f8vYfu2S3iqLYawGNG4M64iasGcfZuHEjRqOR2bNnt1q3O46TZrOZ//7v/76m/ejcfHBx90HR2C8UrKZq6ooyqSvKbN5/XSXzH3/a8XN75fW3OLWh/f8Xrd4Trd6TRlMdlvoqR4YFQGOjhYryMirKy9rdtsmCBQuIjY3tUPsrKip44403OrRuSzpFi4+LF946TxRFocJioMJiaJVRBlBhMvB0i2PkW68sZcnxv7S7Tw0aQl0DqdM2YDDXYFGb+66qKoaaagw11ZB34bLteuqppzqcfZOTk+Ooz9UZXq4KXq4KWo19ivn8GsivUbm0MKTBCM+2+H9Z+uoS3kltG3gC+xCzYA8FsxVqTSoNl6xWV19PXX09BYVF7W4P8D//8z8dznw/dOgQK1eu7NC6LWl1oPcEjdZ+EW2uVzDX2wMOJWea12s04yi4vurLlTSaFTI2t38s0rrY8PAFi9E+hX1LJpOZ0tIyx9C89uj1el5++eUODxPauHEjO3fu7NC6eLijuOkvEM33AAAgAElEQVRRFcVel6yiyv5ooc0njNFE1tkzLHntVfsvVqtF/WbbpWs5NP1UVL0riqsLqskM9Q2O2R5VVbUHCQ0Gzp09y65duxzbjhw5kp/+9Ket9ne1Y+QNF6BootfrmTt3LnPnzr2m7S/9MLzaPM/trd/e8ibOqnwvhBA3gkuPkefO2U8YvcJGdMv7aXR6x4nOypUr0ei6546nV9gIqvOO4Ofn1+HPgfHjx7N//36qG2uvvvI1cNW4tuq7q6brK/JbVRtGq4mwkFASEhI6fMGp1+spa4QqIwR3Q00uVy2t+94N2df1FjCYAJROffa/+urvAXD3VrFa7LMVdRXtJf3ujqxzi8k+k4ihyEZGRgb3339/h7ZraGiw19OJCEUJC+76gKRW26rv3dJ5dzeUwYNQT53Dx8en2875Wu7XbDYTGRnJhYs1OgYMGEBoaGiX/fysVn/WrVuHoiisW7eOkbEdKQwaBER1aP+1tbXk5OQ4Zo8YOnRoh39uFRUVaDQaR3ZEcHAwERERXZYx7GcNbtX3ISOHXrXvHR1IbLVaKSwspLi42LFs6NChhIeHd2j7S/sYEhJCeHh4l/U92Gpt1fehIxK6bJhKQ0MDeXl5jqkrfX19GTZsWIcDFAaDwfG9TqcjOjq6y+ugWK1WVqxYgbu7O6Pirq02U3ssFgsXLlxwzIoxbNiwTs0IFxsb6whQREZGEhzcDcfKblRWVuaYvXDEiBGdPkbecEM8rldfHuIhhBA3KqPRyOOPP0EDHsTMfhGtS9cW5OruGhQA5toyTm18mZuGRPHKK/+vwycTdXV1PPfscxQWFTLefyT3hN9ClEdEl7WrO2pQNDFZzewsO8DG4hQqzdX86le/Ys6cOR3ePjs7m9defRWLqZ5boxXGR2hwd+m6k7DuqEHRxGJVOVpsY9M5lbpGDU8++RumTJnS4e0PHjzIxx8vo6ioGK1OIXSYjYhYFZcuiJ1lfqe0Kv7mE6xeU7HM9hhrIS9ToSxHQVVh6LChPLroUYYM6XiRi3f//Gd2bN9un9ouPAQlcoD9q+f1zwhj27yzdXX6kKBOF8tsj2q1QVk5an4Rmtx8bLV1eHp68vLLLxMTE3Pd++8NGhoayM3NZdCgQTd8UcTOkr73z76L3umGzaC4Vq6uriQkJLB9+/ZWAYrt27fzgx/8oN1tkpOT2bBhQ6tl27dvZ+zYsRKcEEKILuDm5sajjy7i9ddf5/SGl4lI/hneEdc/ZWdPUFWVyrO7KTz4BTrFyqJFv+rUnQ5PT0/+8NYfWLNmDevXredA1jHifYZyd9gM4ryH9Mq7JrWNdWwp3suWsr3UWeqJi4vjmZ88T1xcXKf2M3z4cJb+4Q+8995fWJ9xjG/P2IgPtgcquqIexbgIDRUNrWfxuB5NdSdSC2wcKQGjxUbUoEG8+PjjDB06tFP7SkpKIjExkezsbL755hu+//57irI1+IbZ8ItQ8QsDt46NlGkjeLCK8WIZgpDB9unzrpWqQr3BPgVpZYGG6hL73cy77prDbbfd1u7sZ1fz5BNPcM/dd5OSksL3u3ZRse8gAIqPN7bwEJSIUAgNtk+t3ElKTBRq7cXOx0SjeF1b0ENVVaiphYIi1IJilJJy1MZGNBoNo0ePZtq0aUycOLFPXdC5u7t36i5vXyJ97599F71Tv8ugAPt430WLFvHWW28xYcIEli9fzqeffsrevXsZNGiQo7hZ0xR/TdOM/uxnP2PBggXs37+fp59+mmXLljl9mlEhhOhLjh07xl/e+yslxUUEDL2Z8KT56PTXn/vfXdOMmmtLydv7D2oKMxk27CaeeOJxBg4ceM37q6urY9OmTaxft54qQxVRngO4OTCJ8f4j8XW5tll5umqaUZtqI7smh70V6eytPILZamb8uPHcN/e+Tgcm2nPmzBm2bdvG9yk7qa2rx9dNw4ggGBGsIcZfQdfBKSYv9UGavRL5tWZO2FSVXINKVqmNzDIorbPh6uLCpMmTmTlzJiNHjuySIFJubi5bt25l3769lJXZZw5w91Hwj7ARMFDFKwA6Uzv1eqYZtVntReIq8hSqCjWY6u37iIwcyKRJk7n11lu7bLYsVVU5f/48R48e5ciRIxzLzMRiNqNotRAcgBochBIcCEEBKK4d+x1eyzSjqqpCdQ2UlqOWlqMpaZ5mNCwinLFjEhg9ejQjR4687mllhRBCXF6/DFAALFu2jHfeeYfi4mLi4uJ47bXXHKmZd911F0CrrIldu3bx4osvcuLECcLCwviv//ovfvGLXzil7UII0ZeZzWZWrVrF119/jcbFDf8hU/CPmYp7QNR1XQie3vQ6wHUP7VBVG7VFJ6g4/T2G86m46HQsWPAf3HbbbR0ugHU1ZrOZ7du3883Gb8i9kIuiKAz3imac/0jG+Y3E37VzVfBfP/E3gE4P7bCqVk7UnONA5TEOGTIxmGvRu+qZMnUK99xzD1FRHRt/3hlms5nU1FR27drFkfTDmMwW9DqF4YEK8cEKwwM1eHRiGMi1BCjMVpXTFSqZpTaOl0OtyYZWo2FEfDxTpkxhypQp3XaRqqoqBQUFpKenk5aWRkZGBjabDZ2rgnewDd/Qi9kV3vbaZpfTmQCFqkJdpT1LwlCsoaZMwWZV0etdGTs2kaSkJMaMGdMjU3ibzWYyMzNJT08nIyOD8+fP24MHioIS6I8aFowSHmqfLu8y/28dDVCo9Q1QUIxaWIympAxbgxEATy8v4keMYMyYMYwdO7bXTicqhBB9Ub8NUAghhOjdzp07x9dff83effuwNjbiERhF4PBb8Y1KRnsNA/WvN0DRaKyh4swuKk5uw1RTiru7BzNmTGfu3LndduGmqiq5ubns3buXPbv3kJefh4JCjNcgxvvFM85/JEF6/6vupzMBCoutkayaM6RVHuOw4Tg1ljr0rnoSkxKZPHkySUlJuLm5XXffOsJsNpORkUFqaiqp+/djqK5Go0CUn4bhAfagRYS3csXAVUcDFKX1KtllNk6Wq5ypUrFYVdzd3EhMSmLChAmMHTvWKXfO6+rqSE9P58iRIxw9eoSSklIA3DwVfMNtBAxQ8QkBzSV17a4WoLBaoKoQKgoUqos0mI0XsyQGRTJm9BjGjBnDqFGjrnlaxK5SX1/PyZMnycrK4mhGBqdOnUK12eyV5MNCUAaGQ0QYilvzMeFyAQpVVaGsAjW/ECW/CLXSXoTPx9eXsQkJxMfHExsby4ABXTyziBBCiA6TAIUQQoheraamhl27dvHNN9+Sl3cBrYse7wEJ+A5KwnvAqA4X1LyWAIWloZrqvMMYcg9SW5iJarMSFzeCO+6Yw/jx49Hru2c2kMvJy8tjz5497N2zl/O59grZ0Z4DGOc3kokBownWtz+16dUCFI22Ro5WnyS1IoP06hM0NBpxd3MnaVwSkyZNIjExscf7eimbzcapU6dIS0vj4ME0cnLs/b/aUJDLBSjaG7oBEB4WytjEJMaNG0d8fHyvqzVVXFxMeno6hw4d5MiRI5jNFnSuCgEDbQRHq3gH2zMr2gtQqDaoLITSc/ahGzaripeXJ2PHJpKYmMiYMWPw8/NzVtc6pK6ujoyMDA4dOsSBtDQMVVX27IrQIIgZDFEDULd+DzQHKNSaWtTsM2jO52NraEDRaIiLjSUpKYmxY8cSFXV92VlCCCG6jgQohBBC3BBUVSUrK4uUlBT27dtPTU01Gq0LnmEj8B2UiM/ABFzcLz8FWUcDFKaaEqovHMKQe4i6klOASnBwCJMnT2LGjBndMqzhWhQWFrJ//3727tnLqdOnABjhE8PM4Ikk+sWhVZpvqV8uQFFqqmBbyX6+rzhIjaUOL08vkickM3HiREaPHu30u+dXUllZab9IPXDAMRTEzUXD6BCYOEDDQB97+v+lAYqyepX9+VYOF0H1xaEb8fHxjE9OJikp6YZK5zebzRw5coQ9e/awb98+TCYTnn4K4bFWis8oKNgDFNZGKD4DRSe1mOpUfHy8mTJlKpMnTyY2NrbLphXsaTabjbNnz5KamkrK999TUlyMxssTm1YDej3KzRNRDx6Fc7lotVqSxo1j0sSJJCUl4eV1jRVIhRBCdCsJUAghhLjhWK1WTpw4wf79+9m3bz9lZaWAgkdQNN4Ro/AeMBqPwCGtxqhfLkBhs1qoK86mOv8otQVHMRqKAIgcNIhJEycyYcIEoqOje/Ud1pKSElJSUtiyeQulZaUE6v2YEzKV6UHj0Wtd2wQoztZdYENRCgerMlEUhfHjxzNr1iwSEhLQXcPMCc5mMpnIyMhg9+7d7Nu7B5PZwmB/DbOHaNh8xj6Lx32xWjafsZFZakOj0ZCYlMjUqdNITEzsE0UPjUYju3btYt26tVy4kIdGB+4+KtEJKmf2azHWqYwYMYJ77rmHpKSkG/L3fCU2m41Dhw6x4vPPyTl3Djzc0ei0KPVG7rn7bu6++24CAtrPMBJCCNF7SIBCCCHEDU1VVXJycjhw4ACHDh3m1KmTqKqKi5s3XgMS8Isej3d4PGe2vAnYAxS2RhOGC4cxnE+jtjADq8WETudCfPwIkpLs6f030p30JlarlbS0NNauXcvx48fxdvHkB2G3kFZ5DAWFn0fdx+d5GzhqOImnhyez58xmzpw5PVL8sKfU1dWxbds21nz9NZVVVXi7glYD1SbQu7lx1113M2fOnD57sWqz2dizZw9vv/M2NuvFYSvhYTz22H8ycuRIJ7eu+zU2NrJw4UKqq6sBeO2114iNjXVyq4QQQnSUBCiEEEL0KTU1NaSnp3PgwAHSDh7E2NCAq2cAaFzQufviHRZHefYWGk31+Pr5MyF5POPGjWPUqFFOr7PQlU6cOMEXn3/B0YyjuGvd8NV5UW6pwtVNz9x5c7njjjtwd+9Y/Y4bkclk4ssvv2T16tUA3HzzzTzyyCN4e1/bdK03muzsbBYvtmcLffzxx/j7X72Yal9hMBhYsGABo0eP5uWXX3Z2c4QQQnSCBCiEEEL0WRaLhYMHD7J27TpOnDjuWD5x4kTuuOMO4uPju2xq0N5IVVV27NjBn//8ZwDi4uJ49tlne30hxK701FNPkZ+fzxdffNGnf9ftmTdvHoAjSNOfpKamEhMTQ2BgoLObIoQQohMkQCGEEKLPU1WVf/zjH6xbt44nn3ySGTNmOLtJPeqDDz5g23ff8df33+9Twzk6oqKiAqPRSEREhLOb0uNee+1VIiMH8dOf/tTZTRFCCCE6RAIUQgghhBBCCCGEcLr+lesohBBCCCGEEEKIXkkCFEIIIYQQQgghhHA6CVAIIYQQQgghhBDC6SRAIYQQQgghhBBCCKeTAIUQQgghhBBCCCGcTgIUQgghhBBCCCGEcDoJUAghhBBCCCGEEMLpJEAhhBBCCCGEEEIIp5MAhRBCCCGEEEIIIZxOAhRCCCGEEEIIIYRwOglQCCGEEEIIIYQQwukkQCGEEEIIIYQQQginkwCFEEIIIYQQQgghnE4CFEIIIYQQQgghhHA6CVAIIYQQQgghhBDC6SRAIYQQQgghhBBCCKeTAIUQQgghhBBCCCGc7oYLUCxbtozRo0cTGhrK9OnT2bNnzxXX37VrF9OnTyc0NJQxY8awfPnyVq+//vrr+Pn5tXrcdNNNrdZRVZXXX3+d2NhYwsLCuOuuuzh+/HiX900IIYQQQgghhOivbqgAxerVq3nhhRd4+umnSUlJITk5mfvvv58LFy60u35OTg4PPPAAycnJpKSk8Nvf/pbnnnuOf//7363WGzZsGNnZ2Y7HpUGPd955h/fee4833niDbdu2ERwczNy5c6mpqem2vgohhBBCCCGEEP2JUlVVpTq7ER01a9Ys4uPjeffddx3LEhMTuffee1myZEmb9ZcsWcK6des4dOiQY9kTTzzBiRMn2LJlC2DPoFi7di179+5t9z1VVSU2NpZf/vKXPPPMMwA0NDQwbNgwXnnlFRYsWNCVXRRCCCGEEEIIIfqlGyaDwmw2k56ezsyZM1stnzlzJvv37293m9TU1Dbrz5o1i8OHD2OxWBzLcnJyiIuLY/To0fziF78gJyfH8dr58+cpLi5utR93d3cmT5582fcVQgghhBBCCCFE59wwAYry8nKsVivBwcGtlgcHB1NSUtLuNiUlJe2u39jYSHl5OQDjxo3jr3/9K19++SXvvvsuxcXF3H777VRUVABQXFzs2K6j7yuEEEIIIYQQQojO0Tm7AZ2lKEqr56qqtll2tfVbLr/ttttavT5u3DgSEhJYsWIFjz/++DW/rxBCCCGEEEIIITruhsmgCAwMRKvVtslaKCsra5Pd0CQkJKTd9XU6HQEBAe1u4+XlRWxsLGfPngUgNDQUoFPvK4QQQgghhLgxHDp0iHnz5jlq1PUnL730EvPmzSMzM9PZTelx8+bNY968eY7M+v7CZDI5+l5WVubs5rRxwwQoXF1dSUhIYPv27a2Wb9++nQkTJrS7TXJyMjt27Giz/tixY3FxcWl3G6PRyKlTpxyBiaioKEJDQ1u9r9FoZO/evZd9XyGEEEIIIcSNobCwEKBVHTrRfzRl2PcXNpvN8X1jY6MTW9K+GyZAAfDrX/+aFStW8Mknn5Cdnc3zzz9PUVGRYyaNRYsWsWjRIsf6CxYsoKCggBdeeIHs7Gw++eSTNkM3XnrpJXbt2kVOTg5paWn8/Oc/p76+noceegiwD+147LHHePvtt1m7di1ZWVn853/+J56envzoRz/q2R+AEEIIIYQQQnSx/naR3lJ/67vVanV83zJY0VvcUDUo5s2bR0VFBUuXLqW4uJi4uDhWrVrFoEGDAMjLy2u1fnR0NKtWreLFF19k+fLlhIWF8cYbb3Dvvfc61ikoKGDhwoWUl5cTFBTEuHHj2LJli2OfAL/5zW9oaGjg2WefpaqqiqSkJFavXo23t3fPdFwIIYQQQgghukl/rq3X3wIULbMmemMGxQ0VoABYuHAhCxcubPe1DRs2tFk2depUUlJSLru/5cuXX/U9FUVh8eLFLF68uOMNFUIIIYQQQvR6/fniXPQ/LbMmWmZT9BY31BAPIYQQQgghhBCiq/TGYQ7dqbcP8ZAAhRBCCCGEEKLf6m8p/qK1/vb7lwCFEEIIIYQQQgjRC/XGi/TuJEM8hBBCCCGEEEKIXqi/BShaBiUkQCGEEEIIIYQQQvQSvXEmi+7Usr8SoBBCCCGEEEIIIXqJ3niR3p1aZoz0xuCMBCiEEEIIIYQQQvRL/S1AIRkUQgghhBBCCCFEL9Qbswi6k9SgEEIIIYQQQgjRa/W3qTb7MwlQCCGEEEIIIYTotRRFcXYTnKY/z+LRG7NHJEAhhBBCCCGEEP1Yf7tIb6m/ZY9IDQohhBBCCCGEEL1Wf7tIb6m/ZY9IgEIIIYQQQgghRK/VnzMo+nOAwmKxOLEl7ZMAhRBCCCGEEEL0Y/05QNHfskdaBiWkBoUQQgghhBBCiF6lN6b6i+7RMihhNpud2JL2SYBCCCGEEEIIIfqx/hyg6G8ZFCaTyfF9nw1QpKamsnnzZurq6rpid0IIIYQQQgghekh/HuLR3/ruCFBoNK2CFb1FpwIUb775JnPnzm21bP78+cyZM4cHH3yQ5ORkcnNzu7SBQgghhBBCCCG6T3+7SG+pN9Zh6E5NQQmN3hWj0ejk1rTVqQDFmjVrGDFihOP5xo0b2bx5M7/5zW9YtmwZZrOZN998s8sbKYQQQgghhBCie0iAov8wGo0oLi6g0934GRR5eXkMGzbM8XzdunXExMSwZMkS5s2bx8KFC9m5c2eXN7KlZcuWMXr0aEJDQ5k+fTp79uy54vq7du1i+vTphIaGMmbMGJYvX97q9T/+8Y/ccsstREZGEhMTw/z588nKymq1zmOPPYafn1+rx6233trlfRNCCCGEEEKIntafAxS9carN7mQPUOjARXfjZ1BA6wIqO3fuZNasWY7nERERlJaWdk3L2rF69WpeeOEFnn76aVJSUkhOTub+++/nwoUL7a6fk5PDAw88QHJyMikpKfz2t7/lueee49///rdjnV27dvHII4+wadMm1q5di06n47777qOysrLVvmbMmEF2drbj8eWXX3ZbP4UQQgghhBCip/S3LIKWemMWQXcyGo3gosOm1dLQ0ODs5rTRqQDF0KFD2bBhAwBbt26lqKioVSZBfn4+fn5+XdvCFt577z0efvhhfv7znzN8+HCWLl1KaGhom6yIJn//+98JCwtj6dKlDB8+nJ///Oc89NBD/OUvf3Gss3r1an7yk58wYsQI4uPj+fDDDykrK2Pfvn2t9qXX6wkNDXU8/P39u62fQgghhBBCCNFT+luAouVN9/4YoFC1WtBpb/wMiieeeIIdO3YQFRXFQw89xE033cQtt9zieH3nzp2MGjWqyxsJ9ilQ0tPTmTlzZqvlM2fOZP/+/e1uk5qa2mb9WbNmcfjw4cum8tTW1mKz2doEWvbu3cvQoUNJSkriySef7NZMESGEEEIIIYToKf1xmEOT/hagMJlMFwMUOoy9sO+6zqw8d+5c/P392bx5M97e3jzyyCPodPZdVFZWEhgYyAMPPNAtDS0vL8dqtRIcHNxqeXBwMCUlJe1uU1JSwowZM9qs39jYSHl5OWFhYW22eeGFFxg1ahTJycmOZbfeeiv33HMPUVFR5Obm8vvf/54f/OAH7NixA71ef/2dE0IIIYQQQggnaZlR0B+0DEr0xiyC7mQ0GUGnBa0WY33v63unAhRgr8Vw6UU/gL+/P59++mlXtOmKFEVp9VxV1TbLrrZ+e8sBXnzxRfbt28e3336LVqt1LP/hD3/o+D4+Pp6EhARGjRrFpk2b+MEPftDu+546derqnRFCiBtMy0LJ10OOkUKIvkqOkzeepszoqqqqfvdzb6pBUFxc3K/6XlZW5vi+qKioX/W9uroGXHSg01LfUN/jfb/aMbJTAYqAgAA+/PBD7r///nZfX716NQsXLqSioqIzu+2QwMBAtFptm2yJsrKyNlkVTUJCQtpdX6fTERAQ0Gr54sWLWb16NevWrSM6OvqKbQkPDyciIoKzZ89edp2u+nASQoi+SI6RQghxZXKc7DknT54EwM/Pr9/93JuywX19fftV3zWa5koHer2+X/XdptpA6wJaLdZGa6/re6dqUDRlH1yOzWa7YjbD9XB1dSUhIYHt27e3Wr59+3YmTJjQ7jbJycns2LGjzfpjx47FxcXFsez555/nq6++Yu3atdx0001XbUt5eTmFhYWEhoZ2viNCCCGEEEKIXuNq1zh9WePF2hP9rQZFfX19u9/3ByaT2T7EQ6fD3AtrUHR6mtErBSDS0tK6dRaPX//616xYsYJPPvmE7Oxsnn/+eYqKiliwYAEAixYtYtGiRY71FyxYQEFBAS+88ALZ2dl88sknrFixgscff9yxzjPPPMOKFStYtmwZfn5+FBcXU1xcTG1tLWAvmvnSSy+RmprK+fPn+f7773nwwQcJDg7m7rvv7ra+CiGEEEIIIbpff7s4b8liMV/82r9+BnV1dQBotM3f9xcmoxF0OhQXHTabrdf97q86xOP999/ngw8+cDxfvHgxr7zySpv1DAYD1dXVzJ8/v2tb2MK8efOoqKhg6dKlFBcXExcXx6pVqxg0aBAAeXl5rdaPjo5m1apVvPjiiyxfvpywsDDeeOMN7r33Xsc6y5YtA2i1DOxZFYsXL0ar1ZKVlcUXX3yBwWAgNDSUadOm8fe//x1vb+9u66sQQgghhBCi+5nN9ov0/phJ0dT3pq/9RdPNaL2XSm1tjZNb03NsNps9QOHiYq9DgT2DxNfX18kta3bVAEVgYKBjXEpubi6hoaFtZr9QFAUPDw/Gjh3Lr371q+5p6UULFy5k4cKF7b62YcOGNsumTp1KSkrKZfdXVVV1xfdzd3dn9erVnWukEEKIXsdkMnHy5Eni4+NbjT0VQgjRvzXN6NDb7iT3hP4eoHDzgpqa/hOgaCqKqrjo7EEKbsAAxQMPPOCYOvTuu+/m2WefZfr06d3eMCGEEKIrff3116xatYpXXnmF+Ph4ZzdHCCFEL9GU4t900dqfWPppDYra2loUDeg9oKqi//zeHcNZXF3sD3rfEJdOzeKxfv367mqHEEII0a1ycnKA/nWnRAghxNUZDAYAqg3VTm5JzzNdzJww9cJiid2ppqYGF70Gnb4RY4ORxsZGdLpOXRrfkKqrL/6N6/X2R8tlvcQ1/Rays7PJycmhsrKy3bFaDz300HU3TAghhOgO/XGMsRBCiMtrClzX9LILte5msVjsMzpAv6rDAPbfuc5VRedqf15bW9utkz30Fo5ghJve/qA5QNdbdCpAcf78eRYtWkRqauplT/AURZEAhRBCiF6nu6bBFkIIcWOrrWmeva8/aZlR2N+CMzU1NWhdVVz0zc/7Q4DCUX/RrTmD4mo1GXtapwIUTz31FEePHuXVV19lypQp/eKXKIQQom+QzAkhhBDtqaysBMBQU43VakWr1Tq5RT2j6W66pwsY+lmAorKqAhd9c4DCYDAQGRnp3Eb1gIqKCvs37u4oOi24uDQv6yU6FaDYu3cvTz75JI899lh3tUcIIYToVpJJIYQQoonJZKK2rpYgVz/KzFVUVlYSFBTk7Gb1iKYARaiXwrmq+n4VnDFUGfAKBxc3+/PelkXQXcrLy9Ho9aCz/54VD/deF6Do1Dxrvr6+BAYGdldbhBBCiG4jgQkhhBCXKi4uBmC492AASkpKnNmcHtWUORLupaCqaq+rRdBdTCYTdXX1uLqpuLjblzX9LPq6srIyVA93x3Obu1uv+5vvVIDi4YcfZs2aNd3VFiGEEKLbyVCP/sVisVBfX+/sZgjR66mqSmFhYb+bzeHcuXMATPAfDcDZs2ed2ZweVV5eDsAgX6XV876u6YJc7wU6V9C5KBQVFTm5VT0jr6AA1duzeYG3J4W9rO+dClDcdtttNDQ0cM8997B69WpSU1M5ePBgm/TsfiYAACAASURBVIcQQgghRG/w5ptv8vTTTzu7GUL0etnZ2fz617/mT3/6k7Ob0qOOHj2Kh86dUb43EewWwNGjR53dpB5TXFyMh6uGUE/F8bw/aApGuHmBotgDFf0hQGG1WikrKYEWAQrF24v6urpeNQV7p2pQ3HnnnY7vd+/e3eZ1VVVRFKXXjWMRQgghRP8kN06E6JjCwkIATpw44eSW9BxVVUk/lM5I76FoFA2jvIex+2g6FosFFxcXZzev2505c5oIL5UQTwWtRuHs2bNMnTrV2c3qdrm5uQC4eXPxq43z53Oc16AeUlBQgNVqRfHxbl548fvc3Fzi4+Od1LLWOhWgeO+997qrHUIIIUS3slqtrb72J/n5+WRkZDBnzhxnN0UI0UudP38egIaGhn5zgX769GkqDZVc0Gt5/cTfuCNsGttK95ORkUFiYqKzm9etLBYL58/nMm2ggk6jEOGlcPr0KWc3q0ecOHEcD1/FMYOHd5BKTm4lpaWlBAcHO7dx3cgRfAxqUVMyKACwZ1DdkAGKhx9+uLvaIYQQQvSI3lYMqie8/fbbnDlzhtmzZ0ux0H7k888/JywsjFtuucXZTRG9XENDA1u/+w6NzhWLxUxKSgqzZs1ydrO63aZNm3DVuOCls6e8j/AZiqeLB99++22fD1Dk5eVhtVqJ8LbP5hDhDZnnzjky4vsqm83G8ePH8QqzOZb5XIxJZGVlMX36dCe1rPudPHkSjV6P6uOFbfNOADS3T0fx8SY7O9vJrWvWqRoULeXl5ZGenk5tbW1XtkcIIcRV2Gw2CgoKpNhjJ9XV1QH9pwhYS2fOnAFkJpP+5ssvv+TPf/6zs5shbgApKSnU19Ux5LbncA8YxPoNG53dpG6Xm5vLjh07mBE0Hq1ivyRy1bgwO3gyaWlpHD9+3Mkt7F5NwxzCvex9D/NSqK2r7/ND9U+cOEF9fQO+oc3nUB6+4KJXSEtLc2LLupfVaiXt4EFsIYFtzgVsIUEcPXqUhoYGJ7WutU4HKNavX09iYiKjR49m5syZjrGd5eXlTJ48mXXr1nV5I4UQQjT77rvvePzxxzl06JCzm3LDUFWV4pJSoP8UAWtPY2Ojs5sghOiFdu3ejZtvOB5BMfjHTOV8zjkKCgqc3axuo6oqH330Ee4aPT8In9nqtTmh0wjQ+7Lsbx/16SGBx48fR69TCPKwPx/oY79o7es1SLZv347WRcF/QPMyRQMBg2ykpu533Mzoaw4ePIihqgplSFSb15SYKEwmU7s1Jp2hUwGKTZs28bOf/YygoCCef/75VnfvAgMDGThwICtWrOjyRgohhGjWdDe8Pw5VuFaZmZlUlJeh0bly9GhGn79DdDmSQSGEuFR9fT3Hs7LwiUxEURR8I+1DG/pygdlvv/2WzMxM7h8wG28Xz1av6bWuPDzwbs6dz+Grr75yUgu735H0wwzxA63G/rkw0FvBzUXDkSNHnNyy7tPQ0MDuPbsJGGhDe0mhg+BoFYulkV27djmncd1s85bNaDzcYUBY2xeDAtD4+bBp8+ZekZ3bqQDFm2++yYQJE9i8eTO//OUv27w+fvx4MjIyuqxxQggh2mq6C96bpoTq7VauXImrhx/D7lyC1Wbj66+/dnaTnKI3nHgIIXqXnTt3YrPZqM7P4PSm13H1CsLNL4LtO3ZgsVic3bwul5GRwfLlyxntexMzgpLbXWe8/0gmBySwatUq9u3b18Mt7H7Hjx+nuKSU2CANH6RZ+CDNglajMMxfZf++vdTX1zu7iV1OVVU+/PBDjA1GQofaPwszv1PI/M4eoPEKAO9AhX9++s8+dwNo9erVHDp4CFtMNIqm7eW/oiiow4Zw5vRp/vnPfzr9XKFTAYqsrCzmzZt32ddDQ0MpKyu77kYJIYS4vMrKSqB/D1XojIKCAjIzMwmMvR03vwH4RiWzbdv2PnnifTV9OV1ZCNE5qqqyYcMGPv74Y7zD49G6ujteCx0zl5xz5/j9q69SVVXlxFZ2rfT0dF579TXC9EE8OvjBK2aV/UfUXIZ4RvLHt/7Inj17erCV3UtVVVZ89hneeg1J4a0vBWdEaamprWP9+vVOal332bp1KykpKUSOtOEd2PZ1RYGYiVbM5gaWLl3aZ84R/vWvf/Hpp59C1ECUUbGXX/GmIXDTENasWcM//vEPpwYpOhWgcHV1xWQyXfb1Cxcu4OPjc92NEkII0b7vvvuOw4cPA/ZxlAcOHHByi3q/7du3Awp+gycC4D9kEg0N9ezfv9+5DXMCCVCI/sBms/Hhhx9y7NgxZzelV1JVlczMTH73u5f4+OOP8YoYRdSMx1ut4xc1nsjJj5CZeZzHn3iCtWvX9poCetdCVVXWrVvHq79/lRCdP88NewRPnfsVt9FrXXl66H8Q7T6At956i5UrV2Kz2a64zY1g48aNZGZlMTNKwVXbOkAT6ashPljDmq+/7lWzOlyPhoYGvvnmGz766CP8wmDAFWbSdPeGIclWzpw5w5/+9CfH1Ls3IpPJxBdffMFnn30G0ZEoU8a3mz3RRFEUlPEJMDyGdevWsWzZMqf9z3dqmtGJEyfy9ddf8/jjj7d5rbq6ms8++4xp06Z1WeOEEELY5eTk8M0337B161ZwcQE/HxSrjTeXLuXOO+5g9uzZREREOLuZvc758+dZt249vlHjyN31IQAxtz2Pm18En3zyT0aNGoWvr6+TW9lzjEYjHh4ezm6G6AE38sXk9Tpz5gybNm0iNTWVjz/+2NnN6TVKS0vZs2cP27Zv50JuLi7uvgyctICAoTe3m0kQMHQaHkExFBz4jH/84x98sXIl06ZO5eabbyY2NhatVuuEXnReRUUF7//1fQ4eOkii3wh+GX0/Hjq3Dm3rqXPnuWG/4B+5a1i5ciXHMjJ4/IknCA0N7eZWd4/Vq1fz6aefEh+sYcLA9i9W7x2u5W+HLLz88hJefPF3jBo1qodb2TVycnLYtGkTO3bswGQy4R2oMHSijauVYgqMhMhRNlIP7Gffvn3Exg5nzpw7mDRpEi4u/z97dx7fVJU3fvxzkzZJm6b7vtEVaAulrEUE2RTEfVTAAcWNB/SZcVzHcRlnxAfHmQdRx2XUGXR+My7PoLiCuKAWRIECQtlKCy2F0tIt6Za0zX5/f4SGFkoX6AY579crryY3996cc5Pe5XvP+R7v/in8OXI6neTn57Nx40Z+2rIFi9kMifFIl4xDUnSdg0qSJBg3ClmSXOec333LxOyJTJ06lVGjRvXb/3yPAhSPPfYYc+bM4YYbbmDu3LkA7N27l+LiYl555RUaGxt59NFH+6SggiAInqa+vp7c3Fy+/e47iouKkJRK5NREqGtwtUWccSmOn/ey9osvWLt2Lenp6cycOZNx48ah0+kGuvgDbvfu3bz44kvg5UPM+AUc2/wGAJJCQdykxRR//RxPPPkkv33kERISEga2sP2ksrKS4ODggS7GgLDb7Xh59ei054LWdjhdT6t7a3LHuro6zGYzGk33LkYvNrIsc/ToUXbs2MH27Ts4csSVYNk3NJHYiXcQlDQJhZeq03VoAqNJuuK3NNUUYSj8ju9zNrFhwwZ0On8mTBjP+PHjyczMHJTb2OFw8PXXX/N/7/8fVrOVhXHXcEX4pB4nC1YrVSxJmEu6Lpl3C9fywP0PMHfeXK699tpBf8EKrjvpe/bsYfPmzfz0009kRSqYn650J8c8XaBG4p6xSv6x287y//kfrrr6aiZMmMDQoUMHfVDKarWydetWvvzqSw4VHkKhlAiJdxKRIuMXTJfBiVaxGRCR4qCmBI4VH+Kllwp5661VXHHFLGbNmkV4eHjfVqSHysrK2LRpEzkbN1JrMCB5eyPHRyMlxkNEWI9+85IkwdhMGBKLraSUH7fnsnnzZvwDApg2dSpTp04lMTGxD2sDUn19fY86mPz44488+OCDFBUVtZuenJzMq6++ysSJE3u1gKdbtWoVL7/8MlVVVQwfPpznnnuOSZMmdVreJ598koKCAiIjI7n//vu56667erROi8XC73//ez766CPMZjOXXXYZK1euJCYm5vSPEwRBOGeyLLNnzx527NjBvv37KTt+HABFYAByyhBXFFytxvnNJtf0WVNdyzW3wJFSpOKjOI0mkCQSEhIYOWIE2dnZpKenD1id+lvr3YN169axfft2fAKjGTL9AdS6cIq+fg6AlNmPA2CqKqT0h9dwWJq4/PKZzJ49u88PugOhqamJ2267DYCbb76ZBQsWDHCJ+o9er2fJkiUALFu27IK9E3gucnJyeOWVVwBYsWIFycnJA1yivme1WtmwYcOpVhOSRGpKCvfddx+xsbEDW7h+YjQa2bdvH3l5efy8azd1tQZAQhuWhH/cGALix6H27/ju/+n7yI44bGaM5XtpKP0Z44m9OKwteHl5M2JEBqNHj2bUqFHExcUN6IhBVquVTZs28dmnn3Gi4gTp/sksir+eKE1Yh/Nv1v/MJ+XfAjAldCyh6iCmhI7tcF69pY53j69ld/1BwkPDuPb665gxYwY+Pp13F+lvDQ0N7Ny5k+3bt7MnLw+rzYaPt4IJ0TAnRYmizffzxk5XroV7xrUPtjRZZdYcdFBgkHE4ZQL8dYwbP4Hs7GxGjhyJWq3u1zp1RJZlKioqyM/P5+DBg+zYuQOT0YSPTiI82UFYInh3UszWBJkZM89+OSzL0FAJlUUS9SdOzp8xgpEjR5Kenk5KSsqAbIu6ujq2bt1KzsaNFBcVgSQhRYVD4hCIi0LqIih9+rnk2cgOB5RXIpeUIpVXIjudxMXHM33aNCZPnkxoaGiv1alVjwMUrfbt20dxcTFOp5PExESysrL6fGf08ccfs2TJElauXMnEiRNZtWoV77//Ptu2bSMuLu6M+Y8ePcqkSZNYuHAhixcvZtu2bTz88MO89dZbXH/99d1e50MPPcT69et5/fXXCQoK4sknn6ShoYFNmzYN+kiiIFzMDAYDQUFBKDrpU3chWbt2Lf/85z+RvLyQw4KRIsIgOhKCAtrtX892UJFlGQx1cKISqvTI1XqQZR588MGLtvud1WqltLSUoqIiCgsL2Z23h8aGerzUvoSmzSYsfY77DmFHJ992s5HKvE+oK/4Bp8NOeEQkWaMyGTZsGCkpKURFRV3Qd55bWlp46623+P777/Hz8kXSKHns8cdIS0sb6KL1i//85z988MEHAEyaNIlHHnlkgEvUP/R6PY8++luazA04HRJD4hJYvvzZQXmX+3zZ7XYOHjzouju8ZQstzc2g8oYAf6S0VNiyE9luJyU1lamXXUZ2dnafnFAPFIvFwsGDB9m7dy979+6jpOQIsizjpfJBG5mOLmYU/rGj8PbpuitbdwIUbTkddpqqD9FYtgfTiT2YGyoBCAgIJDNzJJmZmYwaNapftrfZbGbPnj3s3LmTHbnbaTQZGaKN5rrI6YwNzOj0GuW5gr9TYCpxvx7ul8jjw5d0+nn7Gg7xacX3FJmOofXVMm78OMaNG0dWVhZarbbTZftCS0sLJSUlHDp0iB07tlNQUIgsywT6KEgPgYxwBUmBUoetJs4WoHCv2y5TqHdyoEamsBbMNidqlTdZo8cwZswYUlJSiIuL65djpcPhoLS0lPz8fPLz8zmQv5/GBteIZt4aCf8wJ+HJMgER3Wst0Z0ARVuWJqg6IlFfrqDp5CW00ktJSnIKGRkZpKenM2zYsD77Dej1erZt28aWrVspKCgAWUYKCoTEOFeeCd/uBcrk4qPIe/JdL5ITkPx8kZITul7OYoGjZVBSiqx3DdeenJLCpEsu4ZJLLiEysoMhTM/BOQcoBsLMmTPJyMjg5Zdfdk8bM2YM119/PX/84x/PmP+Pf/wja9euZdeuXe5p9913HwUFBWzYsKFb62xoaCAlJYXXXnuNefPmAa5mNCNHjmTNmjXMnDmzr6orCMJZNDU1sXfvXlasWME111zDjTfeSEBAwIDesekuq9VKY2MjRqORhoYG6urq0Ov1nDhxgs2bN+N0OpFuvhqpkwsJ51c54HAgzZqK1EnzUrm+AXndt6hUKiZPnkxUVBShoaEEBQXh7++Pv78/Op1u0DdRdTgcGAwGKisrqaiocD9KS49TXV3lzjTtrdGhjczAP3YUAfFjUHi1v6PR2cm33Wyk/tgOjOV7aKoqxGEzA6BUKomKjiEuNoaoqCiioqKIjo4mIiKCoKCgQfmbaz2B27JlC19/+RWm5iZCvAMI8NbR4DBhsNQzcuRIrrzySkaOHImfn99AF7lX2Ww2Dh06xA8//MC3335LRphEuC98f9RJdvYEZs68nIyMjEF3x/N8ORwOjh07xpYtW/jq669obm5GGygTO0Lm0I8KgoODmTPnKiZOnEhUVNSg/O12R0tLC4WFhRw6dIjCwkLyDx7EYja7Artx0UhJ8cj7CgBXEFc2m6H4GBw9jlzXAEB0bAwZaemkpqaSlpZGdHT0BbU9GhoayM3NZfv27ezbtw+bzYakUOIbmoxfVAa6qHR8Q5OQFN2/iVZbtJmKvE+QnXaCkyejCYgiOKVngW2rSY+x4gCminyaqg5ia2kEIDY2jgkTxjNx4kSSk5N7ZVubTCYOHTpEQUEBhQWFFBQUYLPb8PXSMFI3lGlhE0jTJXXrs84lQNGqyHSM72ty2dNYiMnWjFKhZOiwoaSlpTF06FCGDRvW63mOzGYzJSUlHDlyhKKiIoqKDnPixAlaB12I0inICIX0MAUxOqnTbbDzhINvil3Jk8dFKwj2kRgXffbfjd0pc6RO5kCNkwN6aDS7koZ6e3mRkJBAckoKycnJpKSkEBsbe943cm02G8XFxe6AxMGD+bS0uI7PGq2EX6gT/zAZXRj4+He/CwdA9RE4vt+1QHgiqLUy4Uk9KJsFjHow1kgYayRMdSA7XV0khgwZQkZGBmlpaaSnpxMYGNiTardTWVnJ1q1b2bJ1q6ulBCAFBrj2d0NikAJ7/vtyfrMJqtuMvBke2mVLitPJjUYoLYfjJ5ANrtHl4ocMcQcrOmo80F2dBiiOn2xe3PoBra+7cj4FOhur1UpUVBRvvfUWN9xwg3v6I488Qn5+PuvXrz9jmTlz5pCRkcHzzz/vnvbpp5+yePFiKioqkGW5y3Vu2rSJ66+/nqKionYR4IkTJ3LdddfxxBNP9Hpdz1VLSwulpaXEx8dfdCdenfHUejscDmpra9mzZw+pqalERESgVqsvqJMsWZax2+3uh81mw2q1YjabaW5upqamhpKSEqqrq6mrq6Wuro7GxkbM5jNHE/Ly8iIgwJ+AwECCg4IJDQ1lyJAhREdHo9Vq0Wg0qFQqvL298fb2xsvLCy8vr15vfWG321m3bh01NTU0NjbS2NhIfUMDRqORpqYmbFZrh8spfH1wBgUipSQgxZ092aXzUDHpzXbmz53L6s8/I1/pRDH07E235ZJS5COlKOobcJ48qJ9OpVaj9dOi89MRGBBAQEAAOp2OmJgYZs+e3W8tVJxOJ8ePH+fQoUOUlZVRXl5OefkJavQ1ONuMPqFQeqPWhaMKiEITEIMmMAbf0ES8taFn/f335ORbdjqxNFbQbDiKub4cS0M51sZKLMYaZPlUBndvlYqI8AhiYqKJiYkhLi6O4cOHEx4e3mv/h3a7HYvFgtlsbvdoaWnBbDbT1NREQ0OD63dWX09lRSXl5eVYrBYkJEYHpnFN5DT+7/gXWJ1WHkq9gy21eXxT/RN1VtfFQ1hIGNGx0YSGhhJw8vv38/PDx8cHjUbj/tv6UKvVqFSqPv9dOBwOrFYrFosFq9WK1WqlpaWF5ubmdn9bWlqor69Hr9dTXV1FWVkZdrsDL4XE+GiJ8kYnNiekhSrYWg4tNieSJBETHUV4RCRhYWEEBQXh4+ODr69vu78+Pj7u+qrVatRqdb+0nJRl2V331jq2PsxmM0aj0b1/MRgMVFVVcuJEBRaLBUmCwGgZSzMgw4iZMqZaKNuvoLHGtX6t1pfo6BgiIyMJDAxsF7Bs/c5P//69vLz69PjicDjcv+mWlhaamprc9ayrq3MdD44e5WhJiXskBUVgAM6wYKSoCIiOcDdpPlsQV65vhPIK5KoaJH0d8sn9sX9AAENTU4mJiSE4OJjAwEB0Oh1arRatVuv+PahUqgE9xpaVlfF///d/5OZux+l0oNaFoYvJQhczEm34MJSdtWXvwuEvnyUhzJv58+ezevVqjtbYSJ3z5DmvT5ZlzPVlGE/sx1i+l6aqQmTZSXRMLDfd+AumTZvW421ZVlbGxo0b2b4tl7IT5QAoJAVxvpEM0yYyOjCNoX4JePUgMAOw/OAbeA/RuutuO9bE79Pu6dE6nLKTIlMpuxsOUmAs4VhzOY6Tx4uoyCjGjR/HtGnTetyNUJZlDh06RHFxMcXFxRQVHaasrNwdmNepFcTqZGL9FcT6S8TqJHTq7m/XN3baONLmUjApUDprS4rTOWUZQwuUNzopa5QpM8qUG8Fid61P5e1NQmICKSmpJCcnM2zYsB4l8/7yyy/5f//vn9hsdgB8A04FJPzDQH2ejRQOfCfRWHNqW/mHyd1uSdERhx1MBmisljDqJUwGCcfJbZGcksyfn/tzt48fer2e77//ni1bt1J6ciQRKSQI4qIhPgbJ//zyjPVGgKIt2dR0KlhR48p/FBUdzaWTJjF9+nSioqJ6tL5O2+JkZmYiSRKVlZWoVCr3667U1tb2qBDdYTAYcDgchIW17z8WFhZGdXV1h8tUV1czbdq0M+a32+0YDAZkWe5yndXV1SiVSkJCQs46T3fs3LmTP/3pT92e/1ykp6czf/58nn32WfLz8/vsc6688kp3n97uaNvEti/0V70B/vu//5vLL7+8W/PKsswrr7zCxo0b+6w8rXX/xz/+0ed1/9///V9SUlK6Na/RaOSee+7plSzyCqWExg+81E68NRAYCJYmmeigEcybO5+PPllNmWE/Gq0Nm9lAbbOBqtoSLHvBbu2dBmJ/+ctfSE1N7da827dv59///vfZZwgJgvBQpNBg8NGcenh5dW/c58MlzH/gISZPngzAH196AToJUEiJ8a4kSYBks0NLC7SYocXsOohU67HWNWC1WKgz1FJ62vLx8fFkZHQyJlcvqaio4Fe/+pX7tULpjTogEpUujtC0sah04aj8wlD7R+DtG4Qk9ezi2HD4B4YmRJ46+T58+KwBCkmhQBPoCny0JTvtWJtqsTRWYjXWYDVV09hYjaGglO07diI7XUGUkJBQXn75r90OmB47dowHH3ywR/U5na+XDzpvLeHewVwWOJZEbQzpuhSCVP58V70NnwR/bp13M//5eD2pikhWjnyUw6ZSDpuOUt5SRWWRgdKCEhqtJvdJ9bmYOXMm9957b7eDFwcOHOCpp546589rpfZSEOQDgSqZSTESCQFepARL7K5wYApM5+a581n/6QdcoTpIuNaLknonlaYKqooqKdgPzdbzHzpw6dKlzJ49u9vzt3bpOh9eKgmVBlRaJ0Hx4BcsExgFhuPga3HtIz/+bDUt0n4yZjoxm1x9qU21TVQ1HKKsshhri+w+iT5XTz/9NJmZmd2a1+Fw8Oqrr7Jp06YefYbCR4Psr0NOS3V1fwsNBpX3GftN56Fi0iOjOwziSoH+rhGQMoYhyzJSoxGq9TRW6dlVdIifd+929bfugeXLl/dLnp+mpiZ+99hjtLS0EJY2m6CkSWiCei/Xg9NuYf78W93HludeOr/RTyRJwicoDp+gOMIz5mC3mGg4thPDoe945ZVXsFqt3f5/0ev1rPjL/3K4uAiFpCBNl0R29CxS/eJJ1MaiUZ5f/3+r08qt8+9y1/3tP7/R43UoJAVDdQkM1SWcXKeNo03lHDYdo9BUwvp161m7di1D4ofw8CMPdzsnyrfffsvrr79+8jMgNVhiZoJEjL+SWH+JgB4EIzrilGX3ueTq1atpLu/+uaRCkgjzhTBfJVmRp9anb4ayRidljQ5Kq4pYf+gw4PpNvPLKK90OUhiNRmw2OwmjnYQOAe9e7qEmO2lX9+NVB85rfUovCIiAgAgZkHE6oKkODm+TMBgMPfpf/dvrr5O3ezdSUADSmJGuoIRfL3YbcTrb1T2/uvK8Vif5aSF9qOvR3ALHT1BZUsqaNWvYtXs3z69Y0aP1dRqgePXVV5Ekyd38t/X1QDr982VZ7rRMHc3fOr3t856sszvzHD58uN3rnTt3drq+3jB//vxTFy0ddHnpLT/99BPTp0/v9vzbtm3rs7JA/9UbXN/jkCFDujWvLMt9GpyA/q37Tz/95P6f6UrrHbDzpfSW8QuR8VaDlwq8NTJqrStKPW/uqbq//u5+/EJkLE1gbZHwVjtR+boODNbm899nlZaeftl+dsHBwfzyl7+kurqa+vp6dwuKhgZXEABDHRjqkAGiwpEmZ3eZyKgdpZLVq1cDuP724G6u5O2FbPNC3r0f9O0DyWofDQEBAQT6B7jvorfmX2i7P+tuoKYrp+8jTw+w+UWNQBMUi9o/8uQjAi/1uXdF6I2Tb0nh5Wq54ReG3dyApbEKS2MlloYKlLXHMFUeBMBg0JOXl9ftftc//fRTj8vSykvyIsonlAAvHTovX0JVQYRrQojziSLA27W96qyN3DTvZiZPnowCiR2v56CUlMRowjE7zCglJT5KDfU2f0zezdRYa92tK3rqu+++Y8aMGd3ui/z5Z5+d0+cAKCUI0EiE+kCgBnRqCNIoCPOViPCT0HhJNFjg5gWufYUEbPrnMhJiJDReCkJ9ZWpbwGiRabBI6Juh3ixjO8dYxQerV5OU1P32wZ9++um5fRCuE3WNn4xaK6PycTVN1uhAG+h6z9oMd9xyah/599X7Adcdx8AoUPnKtBjB2uzA2gzmJrCYJOwdN/Dq0jfffNPtgJzNZutZcEKjhuBAnAH+SEGBSGHB4Kc9+zlYN4O4kiRBgD+y1hfJX4esr0VuMEJdvWukpG7Ky8s7o5tcX+wnqSMKNgAAIABJREFULRaL6xgsyziszdjNRmSnA0nZO/3+FV7qdseW07vInS+HpQmHtRnZ7sp3YDAYzjgOnI1er6fq5E3BaE0YabokEnxjiPONOu/gBIBKoWpXd5Wi85FNurdOb2J9IrHLroBXo81ESXM5NTU1FBUVdfscKSIigmnTppG7bRstZjNGq0Swj8TQYAlv5fmf31gdcGebc8k3V5zfuaRCkgjXgq+3gtoWJ3VmAJnQkBAmT5mCyWTq9vfeOrqW3Srhren9jAQOR/vz6L+8+IdeXb9CCSpfsDRJTJo2muLi4m4ve+mkSRw4cAC70wlJ8Z12+z0nDkf7a4iXXui1VUu+PsiJ8XDkGAqlkmlTp57xnXe1j+x0r7Zw4cJOX/enkJAQlErlGa0W9Hr9GS0gWoWHh3c4v5eXF8HBwciy3OU6w8PD3f2f255s6vX6TkcPOX3Dp6amcs89PWsu1hMtLS28//77eHl5sX37dt57771B093hpZde6rN1D+Z6gysJa1dkWcbpdCLLsvt524fD4cDpdJ7RDcJoNLJp0yYUCgU5OTk8/vjj+Pv7u7swtHZjUCqVKJVKFAoFCoUCSZLcz1vvcrZO76u6OxwObDabu+xtn7c2225sbKS6uprGxkZ3gKO5uZmmJhMmk4n6ahPmNl0UPvjAdTLx4YerqTysoPLkvs9b5Y3Ozw+dnx9RCX74+mrdTbZ1Ol275txqtRpvb+92XT9UKhUqleq8mnEPHz68w+k///wzzz777KkJFdVQ3wARHe/DOqRQkJ+ffyogFd7D5GM1hjOCE88++2y/J03saB85fvx4tm3b5upbW1JC1YE97qbcAN4aP1S6CFT+kWgColEHRKMJjEHlF9pli4qQoVP5YM1HAHz8+VeEDO26KaPsdGBprMRcX465oQJLwwmsxkosjVXuHBUAXl7exMTEMH76dFJSUsjOzu7RUJ6pqaksWrTorF05Wpv6m81mdxeo1qb/TU1NmEwmjEYj1fUV5Fbvc28znbeWsQEZzAibwKdrXBfDW9f+QKi3lv8peINiUymyK1SGn9aP4OBgdP46huki8fPzw9fX192lo6PH6V0/NBpNj/OZPPb44+79QGsdW7t0tD5vnd62i0PrX5PJRH1dHYfq62ioMLq74EgSJAcpmJko8eka174iZ90HVJtknt5kx+48dbKr89MSGBREZFQQqTrdGV0b2tazbf1bu421fd6T/ehbb73l7tZwer3abou2f137RNd3bjIZqa2rpbq8Drv91F1/X3+JoFgHaz5y1XvdN6sJS4CjuyVqjyuwNJ+qu1qtIig4iPCIYPyS/fDz83N3aWitV9v6tW6H1i4grfvRnnb3+eijj2hubqahoYGmpiaam5vPeLjqaHJ13zEYqCo6it3murhV+GhwhgQhhQRDaBCEhZwK9KYmsvrDDwFY/flnkHqqSb0sy2A0QY0B2VDn6uZRV09r5/2AoEAiwiMJHpaGTqdzbw+t9tRxpPXRHzl8Tt9PvrByJWvWrOHHn36itugHlN4atBHD8YtMQxsxHJ+gOKRz7HolnXZs0UYMO6+y21rqaao6hKnyIE2V+Zgbq07WaSjXL7mVSy65pNv/L6mpqYwdO5acnBy+WLuONeXfuN8L1wST4BNDsjaeYboE4n2jUEo9O34rpfZ1H+7X89GcnLKTspYqCk0lFJtKKWkpp7LlVBP6yPAI7ph3B7NmzepxstrMzEwsS5eyadMmvli3lg/yy/miSCYp0NW1I85fIsZfwser5+dxKiXtgzPneOrTYJY53iifbDkhc6Tela8ia9Qorrn2WrKyss6pW2BW1ij2HdhLi/Fk147wnueaOBvlaXXvrd57NgsYa6CxRqKhUgIZ5s6d26MEkqmpqURFRbHsmWewf/cj8ozJSD69GKQ4j5tdXZGtNsj5Camugd/97neMHz++x+u44JJkjhgxgr/+9a/uaWPHjuW66647a5LML774ol3rhfvvv5/8/Px2STI7W2drksy//e1vzJ07F4Dy8nJGjBgx6JJkemouBk+tN3he3S0WC9XV1RQVFbF9+3Zyc3OJioriqquuYujQoe58E4PVyy+/3L5VjVoFcdGupnFaLfj5gs4P1Ge/0OlJ5mVZlsFscZ2Qm5rB1ITc1AxHj7tuHZx0ww03sGjRol6qZe+x2WxUV1dTXl7uTox54sQJyspPUF93Ksii9NagCYrHNzQR37AU/CLS8NKc2dri8JfP4rRbSLnycZTeZ/6/WJsMmCoLaK4ppsVwBHN9OU6H64JIkiRCQ8OIPZksMzo6mqioKGJiYtwB9MHA4XBQVVXF4cOH2blzJzt37ERywJKEufgo1XxZtZm9DYeIj4tn0qWTyMjIICEhYVD/33SXw+GgpqaGEydOUFBQwHffbqChoYE5KQpAYsMRB0pvNTNmXs6IESOIiYkhIiJi0CeJ7Yosy9TV1VFeXk5RURG7du/iwP4D+OggfpQTpQoOb1HisEqMGzeOzMxMEhMTiY2Nxc/Pb8BbxnaXw+Hg+PHjFBQUuJIjFhZSWVEBuC6u5ahwV3e2uGjkDT+0y0EhNxiRjxxFUXrCNRQzoNZoSE1JYdiwYe6HTnd+/br7i8ViYc+ePezevZvdeXuornI1z1aqfPANS8UvMg2/yHR8guO63R2utmgzlXtcgczg5Mmo/EJ7lCTT1tKIqTIfU0U+zdWF7oCEWq1hxIgMsrKyGDduHBERHQ9x2hMmk8mdILK4uJiiQ0XUGFwJVjRKNcnaONJ0SUwIyiRCE9LF2no2zGhbBms9ubV7OdhYTFFzKc12V+A6ODCIlKGppJxMGJmcnIy/v/951PgUWZbZt28f3333HYcKC6iqrnG/F6ZVEKuDOH+JWH+JaJ2EqotWFjtPOPi6yIFDhnHREuFaRadJMsE1/GhZoysgcbzRSblJcifLVCgUxMfFkjFiJLNnzz7v4X1PnDjBf/7zH/Yf2Ef9yZZN3ur2uSi0QdDDXp+AK0lm6T4J2elKkunj37Mkma0szacCEsYaBc0NrktrLy8vhg4dytSpU7niiit6vmJg7969LF++HLvDgRQeCjGREBMF/ue37+71HBRGE5RXuh7VNeCUefjhhzu9md+ZTgMUf/nLX3q+Qkni0UcfPafCdOXjjz9m6dKlrFy5kuzsbN5++23effddtm7dSnx8PEuXLgXgzTffBE4NM7po0SLuvPNOcnNzefjhh1m1alW7YUY7Wye4hhn98ssv2w0zWl9fL4YZFYQB1HqQHjZs2KAYi7s7LBYLu3fv5siRI1RUVFBVXU1VVRXGxvbN6RVqlauvdYA/Ukigq5WEv859MOpomFFZlqG+Ear1yLX1SA2N0GBEPnnHsVVAYCARERFERkQQFRVFUlISo0ePvuCG0mxqaqK8vJxjx45x9OhRiouPcOTIEex2GyChDUsiYMgEglOmoFT5Ah2P4mFrrsNwaCMNpTsw158AQKPxOXlimcSQIUPcyVYvlN9ZW3q9nuX/s5zysnLSdcnsNx7mrrvu4qqrrrpgLkzPVVNTEy+88AK7d+8GIGHIEB57/HHCw8MHuGR9b9++fTz33J/QBFpoMUrofEP4w1N/OO+LhcGmqamJwsJC8vLy2LJ1K7UGg6t1hUIBWl+ksZmQdwC5ogpJoSAzM5PsCRPIyMggJibmohmiWq/Xc+DAAfLz89m3/wCVFa59mbdPALqYTALix+IXlYFC2XkwrqfDjJrry2ko3UljWR7NetcoGD4+vmRkpJOenk5GRgZJSUn9cq5sMBg4ePAgBw8eJP9APsdKXYkFU/yGcFnIWC4NGdNp8sznCv4O0OXoHU7ZybbaPfyg30mBsQQZmdjoGNJO1jktLa1f9zFGo9EdqDl8+DBFhw9RV++6kFdIEOHnClqMi1KQGNTx772rYUadsszuSicHa2TKTFDbfKqlWnRUFCmpQ0lJSSElJYWEhIQ+OVbKskxVVdXJkTwOsn//PqqqXC3glV4SfiFO/MNdo3n4BbvyQXRHT4cZlWUwm6Cx+uToHXoFZpNrWY1GTVqa63eQnp5OSkpKrwTAjx07xubNm9mxcyfHT3Y5Vvj74YyORIqJhPAwJGXP9mXnOsyoe3mn09USrbwSxYlKnPWu89io6GjGjxvHpZdeel5d3ToNUAQFBZ25wMkTmtP7orfmdJAkqU+SZLZatWoVf/3rX6mqqiItLY0//elPXHrppQBcffXVAHzxxRfu+X/88UeeeOIJCgoKiIyM5IEHHuCuu+7q9jrBNZzPU089xZo1azCbzVx22WWsXLnyojvQC4IwMMxmMzU1NVRWVlJZWcmJEyc4fvw4R48do7mpCQBFgD9yWiokxSN/u9k1bdZUV0K3wyVIhUU4ja55/XQ6EhMSiI2NJTo6msjISCIjIwkNDb0gL7K7q3U4sr1797JtWy5Hj5bgpdYSe8ldBMSPPePku/rAl1TlfYTsdJCekcGE8eMZOXIkcXFxF1XwuW0C0unTp3PfffcNcIn6T1lZGb/5zW8AePTRR5k4ceIAl6j/vPPOO3zyySeAq/Xo1KnnfnfsQuB0Otm7dy/rvljHrp93QfIQpGPl6LRarr7qKi6//PIOz2svRq0jfO3atYufd+3C3NKCl8oX//hxBKdORRvWcWLl7gQo7GYjtcU/Un/kJ1rqylzzp6Yyftw4srKy+i0g0RW9Xs8PP/zAxpyNlJWXEaEJYV7MlYwLGtHh/N0JUOxrOMR/yr+krLmSyPAIpk6fxtSpU3vUdL8/1NbWnhx+1PU4fKiQpuYW0kMVzElVEqFtH5w+W4BClmUKDTLri5xUmpyEhgQzdNhw9zCiycnJ+Pr69lu9TldbW+sKSOXnc+DAfo4fP44suwIWYUlOoofJXY700d0AhdMJhmNwokDpbiHhp/MjIz3DPZxoQkJCn//2q6ur+fnnn9n588/s27sXu93uaiUWFe4KVsREIWm6d57X0c2uzshWK5RXuoISFVU4LVaUSiXpGRmMGzuWsWPH9miUls70qItHVVUVc+fOZfjw4dx7773ujP6HDx/m9ddfp7CwkA8//LBXmm8JgiB4OlmWqaysZM+ePWz49ltKjhxB4a/DKUmubiApCUh78nE2NTM8LY2ZM2YwcuRIwsLCLvq7491RXFzMG2+8yZEjR0i9Zhnl298FXCffdSW5lG5+nezsbO64446L/rh14403Ap53kS7LMjfddBPgyvngKReo4Do3+93vfgcw6PIz9bWVK1e6k8++/PLLHn1DyWazsW/fPjZv3szWbduwWixow1IIz7weXfSIdseKzgIUtuY6qvato67oB5wOG6mpQ7nssilccsklPcq5099kWWbXrl288+9/U3r8ONPDslkYdw3eiva32DsLUDhlJ2vKv+GLyk1ERkRy6209y6Ex0CwWC2vXruWTjz/CbLEwIVrBrCSlezjSjgIUJ4xO1h12UlTrJCIinNtuWzTo62w0GikoKGDLli1s3rwZGSch8TIxw2V8AztepqsAhcPm6gpScUiJpUkmLj6OOVfOcXcTHMjtYTab2bdvHzt37mTHzp3U19UhKZXIqYlIGcO6zFnR3QCFbLEiHzyEVHgE2WbDT6dj/LhxjBs3jlGjRvVJkKpHAYrbb78dp9PJO++80+H7t956K0qlkn/961+9VkBBEATBdZK1fft23n3vPcrLykClAquV5JQUbl24kFGjRg10EQclk8nEkiVL8YkZQ/yl/+WefnjdHwnRyrzwwspBcbevr7UGKFauXEliYs8TwF3IWuu+evXqCz7fRE9YrVZuueUWoHsJmy8m+/btc+cm87S6d6alpYWcnBw+/fQz9Poa/KLSiR73S3yC4oCOAxQOm4WaA+upyf8SnA6mT5/Gtdde6+4GfaFwOBy89957fPrpp4wKGMavkxeiUpzaH5wtQOGQHfy95EO21e5h1qxZ3H333RfsfqShoYEPP/yQr7/6ijAt/Ga8Ei+FdEaAQt8s82KuHY2PL/Pm38KsWbMuuDrX1NTw+eefs2HDN1itNgKjXYEK/9N635wtQGEzQ8UhiepiBTaLTFpaGjfddBOjR48elEEaWZYpKSlh/fr15GzcCAoJOTXJFag4S4uKrgIUstWKfLAIqbAI2WZn0qRJXHvNNaSmpvZ597gedTrOycnpdCjD6dOns2zZsvMulCAIgtCeJElkZ2czZswYbr/jDswtLYSFh/Pn557ziAvsc+Xn58eUKZP5PmcTjvELUKq0NBuO0lx7jAU3Lva4bTeY73T2tQvtBPt8qVTnP1Tihaq1he+ECRMGuCSDi4+PD1dddRVXXHEFX3/9NatXf8ChdX8gdPgVRI2+6Yz5G8v2UJ77L6xNtVx66aUsXLhw0HVn6C6lUsmiRYuIjIzkjTfe4OXid/lN8q3tghSnc8gO3jzyAbl1e7n11lvdwc4LVUBAAIsXLyYzM5M///nPbDoqMTOp/TFQlmU+OujAS6Vm5Qsvdnu47MEmLCyMu+++m3nz5vHll1+y7ot1HPjexJDRTqK7GKDG0gT7NiixmWUmTBjHL35xI8OGnd+oNn1NkiSSkpL49a9/zY033siHH37IDz/8AIdLcA5LRkpPRepmF1/ZZoOCIjhYBFYrE7KzueWWWxgyZEgf1+KUHgUolEol+/fvP+v7e/fuvWgSDgmCIAxG3t7eTJk8mQ0bNjD1sss87gL7XMyePZsNGzZQW7SZsPQr0RdsQKVWX/R98jviaRfpgmfy8fHh6aef7tcT6guJt7c311xzDVOnTuW9997jm2++oakyH0mpRlJ6IcsyFbs+pObAemJj47j3iYf7fSjqvjJr1iwUCgV/+9vfeLX4PX6TfCteijMvh5yyk3+UrCG3bi+LFi3ihhtuGIDS9o0JEyYwadIkvt22lTHR7a/b9lQ5Ka5zsnTp7RdscKItnU7HvHnzuP7663nxxRfYsXMH/qFO/M4yuIvshKJtChSyiueff5akpHMY1mOARUdHc//993PTTTexevVqftqyBamkFPmqGUhdDHEr22xIX+XgbDAydtw4fnnLLQOyDXoUTbjuuuv497//zcqVKzEaje7pRqOR559/nnfffdc9OoYgCILQN+655x7ee+89FixYMNBFuSAkJSWRlpaGvmADVpOehqO5zJwx46IYWrOnLuYkqYLQVmZmJgEBAQNdjEFNp9Nxzz338NRTT4G5FqfVROL0B6ja8yk1B9Yza9YsVq58/qIJTrS6/PLLWbp0KXsaCvnnsU/PSPwP8EHZV2ytzWPhwoUXVXCi1aJFi3A4ZXZXOLlnnLe7e8f2EzIR4eHnPCzmYKVWq/n1r+8jOCiYw1uV2K0dz3f8gERjjes860IMTrQVGxvLww8/zJ+few6FzQ5bdnb4W28lyzJy7m7kRhNPPfUUTz7xxIBtgx4FKJYvX86ll17K8uXLSUxMdA8hlJiYyLPPPssll1zC8uXL+6qsgiAIAq6mfJ6U8K43/OIXv8BqMrj6WMtOrr322oEu0oAYjH1nBUEYWKNHj+bJJ5/A3FhFxe4Pqd6/jssuu4ylS5detK2uZs+ezdy5c/nR8DNba/Pavbe3oZAvqzZz5ZVXupPsXmzCw8MZPnwYu6tOXbA2WmSKa51MnTbtomwR7+fnx8MPP4K1GcrzT+WeaM0/YTZC+QGJadOmXVQtLIcOHcpdd96JfKIKDh4++4xHSuHocebPn8/o0aP7r4Ad6NGvT6fT8fnnn/P+++9z2223kZ6ezvDhw7ntttt4//33WbduHTqdrq/KKgiCIAjnZMyYMQQFh2BrMjBq1KgLth/1+ers7okgCJ4rPT2d9PQMDIXfIzsd3HzzzRd9QHPevHmkpqTwn/IvceLaNzplJ++WrSM6Kpo777xzgEvYty69dDJVJic1za6659e4tsKkSZMGtmB9aPjw4YwdOxZDqQLZ2f69mmMgSVyUrVNnz55NdnY2ct4BZKPpjPdliwV25JGenj4ognLnFB6bM2cOL774ImvWrOGjjz7ixRdfZM6cOb1dNkEQBEHoFQqFgsQEV3/0C73Z5vkQOUsEQTibESMyAND4+BATEzPApel7SqWS2xYtosFqpNHmumjLqy+gqkXPgoULLtrWI63Gjh0LwCG960q90OAkNCSYuLi4gSxWn7vssqlYmmUaa05Nk2WoLVWSlpZ+UeTeOJ0kSdx9992uipYcP3OGY2XIdjt33333oDhPuPja7wiCIAhCB7y8XInQ/P39B7gkA0e0oPA8Iu+I0F1hYWEAqLy9L/rWE60yMjIIDwsnUhPG48OX8HN9PlpfLdnZ2QNdtD4XGRlJRHgYxXVO1zCV9RKjsgbnMJq9ady4cajUKgxlp+rZ0gjNjTJTpkwZwJL1rdDQUNLT0pCOHkeWZRSzpp4aYrTkODGxsSQkJAxoGVv1aBQPgIKCAt544w3y8vJoaGjA6WzfPkaSJPLy8s6ytCAIgiAMLE0XWawvRlOmTGHz5s0DXQyhn/3+978XiSKFbouNjQVg1KhRA1yS/iNJEhkjMtj1004AjrQcZ3ja8EFxF7k/xA9J4HiBgWYbNNucHjHyjVqtJjUlldLKA3Cya4+p1vVeRkbGwBWsH0ydOpX8119HqmuA4EAA5KZm5BoDUxcsGDTBqR61oMjNzWX69Ol88cUXREREcPToURISEoiKiuL48eNotdqLut+SIAiCcOFqPfCeHlj3BEuXLmXFihWD5uRD6B9jxowhOTl5oIshXCCGDRvGO++8w/333z/QRelXCQkJNFiNGKz1VLboSUxMHOgi9ZuoqCj0TbI7D0VUVNQAl6h/pKSk0FQv4XS4XptqJdRqNdHR0QNbsD6WlZXlelJjODVR74rODHRizLZ6PIpHdHQ0O3bs4G9/+xsADz30EF999RVffvkl5eXl3HzzzX1SUEEQBEE4H57cvcHX11dcqAqC0CWtVntRjuDQmdacC7vq8nHKTuLj4we4RP0nKCgIu1NGfzJAERQUNMAl6h9JSUk4HTItRtfr5nqJxMTEi/63Hxoaip9Oh1xb554mG+pQenkNqt99j76F3bt3s2jRIgIDA91fYOudqOzsbG6//XaeffbZ3i+lIAiCIPQSMUSrZ5k9e/ZF32xXEIRz1xqg2Fa7t91rT9Cak6m1BYWn5GhqHcnL0uR6bW1SeETrEUmSSE1JQVFbf2pabT3x8fGDKilsj3JQSJLk7svo6+sLQG1trfv9lJQUVq1a1YvFEwRBEITeNZgOwkLfW7JkiUe3nhEEoXPBwcHo/HQUmY7hpfTyiBFMWrVe11UYPStAERERAYDFBA47WJqd7mkXu5iYGPL27QNZRpIkJFMTcUOHD3Sx2ulRC4r4+HiOHDkCuBKMDBkyhJycHPf7W7ZsITg4uHdLKAiCIAi9YMyYMQCEh4cPcEmE/iRJ0kXfbFcQhHMnSRJx8a5WE1FRUe4RnzxBa5eOMqOMn9YXlUo1wCXqHzqdDrVahaVZwtrimtY6is3FLiQkBNluB5sNWZZxNrcQEhIy0MVqp0f/gdOnT+ezzz5j2bJlSJLE7bffzjPPPENpaSmyLPPjjz/ywAMP9FVZBUEQBOGczZo1iylTpoguHoIgCEI7rRfqgUGBA1yS/tV6YWqyQnzE4LpI7UuSJBEYGIi1pQrbyQCFp+TfCA0NdT1pagGNE5zOCztA8cgjj3DzzTdjt9vx9vbmgQceQJZlPvnkE5RKJY899hgPPfRQX5VVEARBEM6LCE4IgiAIp2s9NrR2YfcUOp0Olbc3VpuNMA9rXRgUFMyJ2ips5tbXnhGgCAw8GYQzW9zTBlvdexSgCAwMPDU8Ca7o00MPPSSCEoIgCIIgCIIgXJBaAxOeFqCQJImQkGAqKqsG3V30vhYYGEhphQKr2TXWaGs+joudO8+IxQLSadMGiW53ymxpaSE4OJjnn3++L8sjCIIgCIIgCILQb/z8/ADQaDQDXJL+56fTuf6e3Aaewt/fH7tFwm6RkCQJ3cntcLFz19NicbeiGGx173YLCh8fH8LCwgZdhEUQBEEQBEEQBOFcqdXqgS7CgPHyco1s5WnBGZ1Oh83ixGYFH18NSqVyoIvUL04FKGwguZpQDLbgVI/SWv/iF7/gk08+wel09lV5BEEQBEEQBEEQ+o0nj/QjnbxI9ZQRPFpptVpkGazNoPXVDnRx+o1SqUStViNbrWC1ARd4gOLqq6+moaGBK6+8knfffZcff/yRn3/++YxHX7BYLPz2t78lKSmJ6OhobrnlFsrLy7tcbtWqVWRmZhIREcHUqVPZsmWL+726ujp++9vfMn78eCIjI8nIyOChhx6itra23TpGjhxJYGBgu8fTTz/d21UUBEEQBEEQBEHod62BCk/R2mrGbgG1h7Ue8dVqwWpDttrw8vIadMGpHiXJvO6669zPd+zYccYPWZZlJEk64wK/Nzz++OOsX7+et956i6CgIJ588knmz5/Ppk2bztok5+OPP+axxx5j5cqVTJw4kVWrVjF37ly2bdtGXFwcFRUVVFRUsGzZMoYPH86JEyd45JFHuPvuu/nkk0/arevRRx/l7rvvdr/Waj0n0iYIgiAIgiAIwsXL01qRtHZpsVnAJ8izAhQ+Pj7U2WygVKAZhKOb9ShA8dprr/VVOTrV0NDAO++8w2uvvcb06dMBePPNNxk5ciQbN25k5syZHS732muvsWDBAm6//XYAVqxYwXfffcfbb7/NH//4R9LT03n33Xfd8yclJfHMM88wf/58Ghsb2+Xb0Ol0RERE9GEtBUEQBEEQBEEQ+p+nBShaW1DYzKBWe1iAQqOBFhPYHag1gy//So8CFAsWLOircnQqLy8Pm83GjBkz3NNiY2MZNmwYubm5HQYorFYreXl53Hfffe2mz5gxg9zc3LN+ltFoRK1WnzHM0CuvvMILL7xATEwMN9xwA7/5zW8GXXMYQRAEQRAEQRCEnvLULh4Om+RxCUIxq166AAAX3klEQVQ1Gg0YG0BpRzMIgzM9ClAMlOrqapRK5Rnj84aFhVFdXd3hMgaDAYfDQVhYWLeXqa+v59lnn2XRokV4eZ3aNEuXLiUzM5Pg4GB27drF008/zbFjx3jllVfOWubDhw93t3qCIAgXjNTU1F5Zj9hHCoJwsRL7yQtPTU0N4LoW8LTt3tLSAoBer/eouuv1evdzq9XqUXW32+1IDgeyw4ksSf1e9672kd0KULz99ttERERw9dVXA9DY2MjChQvPmC8+Pr5H3UCWL1/O888/3+k8a9euPet7rTkvOnO2PBmna2pq4pe//CVRUVE888wz7d779a9/7X4+YsQIdDodd955J8uWLSM4OLjDz+2tg5MgCMLFSOwjBUEQOif2k/3n0KFDAAQGBnrcdvc5mYMgIiLCo+reNodhWFiYR9Xd398fqboK2enEz99/0NW9ywDFunXreOSRR/j888/d0+x2Oz/++CMxMTHurhCyLPPTTz9x3XXXMXv27G59+L333su8efM6nSc2NpYdO3bgcDgwGAyEhoa639Pr9UyaNKnD5UJCQlAqlWe0ltDr9We0qjCZTMydOxeA1atXd9nMZ+zYsQAcOXLkrAEKQRAEQRAEQRCEC8HZBh24WLXtzu9pgx94eXmBLIPTibe390AX5wxdBijWrFnD2LFjmTx58hnvvfbaa0ydOtX9+oorrmD16tXdDlCEhISc0W2jI1lZWXh7e5OTk+MOJJSXl1NYWEh2dnaHy6hUKrKyssjJyeGGG25wT8/JyWk3GonRaGTu3LnIssyaNWu6NQ7svn37AETSTEEQBEEQBEEQLnieFqBoG5Q4Pffgxc7LywucDiSnsl1ag8GiyxL9/PPP3Hbbbd1a2ezZs/nXv/513oU6XUBAALfddht/+MMfCAsLcw8zmpGRwbRp09zzjR8/nv/6r/9iyZIlAPzqV79i6dKljB07luzsbN5++20qKyu58847AVdw4sYbb8RoNPLee+/R3NxMc3MzAEFBQahUKrZv386OHTuYMmUK/v7+7N69myeeeII5c+YQFxfX63UVBEEQBEEQBEHoT542ikfbFvM+g3Cozb6kUqnA4US6UFtQVFdXExMT026aRqNh8eLFxMbGtpseGRnpTjLT2/70pz+hVCq58847MZvNXHbZZbzxxhvton2HDx/GYDC4X994443U1tayYsUKqqqqSEtL44MPPiA+Ph5wjQ6yY8cO4FS3jVZr165lypQpqFQqPvnkE/7yl79gtVqJi4tj0aJF3H///X1ST0EQBEEQBEEQhP7kaS0o2l6Ye9ooHt7e3uBwgtM5KEel7DJAoVar3dldW/n6+rJixYoz5m1paemzKIxGo2HFihUdfm6r+vr6M6YtXryY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\n",
      "text/plain": [
       "<Figure size 1080x360 with 6 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plot_schemes(n_features, n_layers, hidden_units, ball_loader)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Batch Normalization"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "image/png": "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/BEWiwWvvPIKZsyY4bZNfHw8Vq9ejREjRuCtt95yW6dWqzF58mTs3r0b8fHxznOu2Pf1RpXU06dPo6SkBH379q1yzIuysjKcPHkSGo0GPXv2rOuh15n4nq1duxY6nQ67du264bnf398f/v7+lZaHhISgffv2OHbsGGw2m/M8eOLECfj6+qJr165uzxeTB++//77be6nT6dCpUydcvXoVf//7392SEwDQvXt3xMXFud0lrGofYuJi2bJllQqz4nOLioqcy+Li4vDVV19hxIgRePXVV92e37t3b/To0QOJiYmSfFYkDyzb1R7LdjXDsl3NiN+VuLg4pKenA3Ccxy9evIgffvgBnTt3xrJly9CmTRuP29X2eyg3TFDQTWFhufYSEhKg1Wpxyy23AHCMOP3uu+9i3759GDZsGADPF9m0tDTYbLZKzblEZrMZANCsWTOP68U7HbW5kIj27duH3bt3o0+fPvjPf/7jltUODQ3F8OHDsWnTJsTHx1d5EVuxYgVSU1NrvM8BAwZUexFryOOtrZYtW+L8+fPIz89HYGBgg++PlCk5ORk5OTkAgJUrV7qt8/HxwUcffYQHH3yw0nYfffQR7HY7goODsWjRokrrL126BADOUfkvXboEg8FQo37c4rmquoLOqVOnUFRUhFtvvfWGzUl79OhR5XniL3/5S6VlAwYMwI4dO6p8PfE9i4qKQkREBI4ePYotW7bcsAJjNBrxySef4IcffsD58+dhNpths9mc6yMjI53nwcLCQpw/fx69evVyFgBdl7du3Rr33XdfpX2kpKRAp9NV6l4jrgOA6OjoavdhsVhw4cIFhIeHe3x//vjjDwBA+/btncs+/vhjAI5WFJ6Ig8+xBYVysWxXeyzb1QzLdjUj/gbXrVtXaV1kZCRmz57tcTyWun4P5YYJCqozFpbrXlju1asXdDodgOsnj82bN2PYsGGw2+1ITEyEj48Punfv7tw2NzcXAGo98JNIfD9r2w8PAL766isAwMyZM90KxyIx61/dgFmN0XfR1c0cb22FhIQAAHJycpigoAYjFlgeeeQRrFq1CoCjIr1582bMmTMHM2fOxO23315ppoe9e/cCADZv3lzt64vb1ebuihhTdRWMuLg4AFX3pXU1c+bMSgXPkydPYufOnXjssccqTQF6oylBxfj69euHt99+GyNGjMCyZcsQFRVVZReP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RoPY2NhGmZObiOhmnD17FkOGDMHdd9+NmJgYlJWV4cyZMzhw4AD0ej2+/vprybrkECkZy3bywLKdPHAMCqImxsfHBytXrsTevXthNBrr3D9w9OjRzv54VHtpaWm4//77cf/99/MCRkRNgo+PD0aNGoX4+Hjs27cPdrsdUVFRmD17NmbPnu0c94KIGhfLdvLAsp08sAUFEREREREREUmO04wSERERERERkeSYoCAiIiIiIiIiyTFBQURERERERESSY4KCiIiIiIiIiCSnqARFjx49oNfrK/0bP358ldt4ev6aNWsaMWoiIiIiIiIi76eoaUZjY2NhtVqdj9PT0zF06FCMHTu22u3ee+89jBw50vk4ODi4wWIkIiIiIiIiUiJFJSjCwsLcHn/xxRcICgq6YYKiWbNmCA8Pb8jQiIiIiIiIiBRNUV08XNntdnzxxReYMGEC/P39q33u/Pnz0aFDB9x9991Ys2YNbDZbI0VJREREREREpAyKakHhKjY2FpcvX8bkyZOrfd5LL72EQYMGISAgAL/88gsWLlyInJwczJ07t9rtkpKS6jNcIiJZ6NSpU728Ds+RROSteJ4kIqrajc6RgtFotDdSLLIyZcoUpKamYu/evbXabtmyZVi6dClSUlIaKDIiIiIiIiIi5VFkF4+srCzs3LkTU6ZMqfW2ffv2hdlsRmZmZgNERkRERERERKRMikxQrF+/HjqdDuPGjav1tidPnoSvry+aNWvWAJERERERERERKZPixqCw2+1Yu3Ytxo0bh6CgILd1H3/8MVatWoVjx44BAHbt2oXMzEzcfvvt8PPzw/79+7Fo0SJMmTIFOp1OivCJiIiIiIiIvJLiEhT79+/HH3/8gY8//rjSupycHLcBibRaLVavXo2XX34ZNpsN7dq1w4IFCzB9+vTGDJmIiIiIiIjI6yl2kEwiIiIiIiIikg9FjkFBRERERERERPLCBAURERERERERSY4JCiIiIiLyKpcuXUJhYaHUYRARUS01uQRFcXExNm3ahNWrV+PKlStSh0NEREREMvPCCy9g9erVUodBRES1JOsExZw5czBw4EDn47KyMowcORJPPfUU5s6diz/96U84ffq0hBESERERkRzFxsZKHQIREdWSrBMUv/zyC0aOHOl8/O233yIxMRFLlizB7t270bx5cyxevFjCCImIiIiIiIioPmikDqA6aWlpiI6Odj7euXMnbr31VkydOhUAMHXqVKxcuVKq8IiIiIiIiIionsi6BYVGo3EOcGS327Fv3z4MHz7cuV6v1yM3N1eq8IiIiEjmrFYriouLpQ6DiIiIakDWCYru3btjw4YNMBqN+PLLL2EwGDBixAjn+pSUFISFhUkYIREREcnZ//73P8ybN0/qMKgR2e12qUMgIqI6knUXj3nz5mHChAno0KEDAOCOO+5wGzTzhx9+QJ8+faQKj4iIiGTu4MGDUodARERENSTrBMWQIUPwyy+/IDY2FkFBQXjooYec6wwGAwYOHIj7779fwgiJiIiIiIiIqD7IOkEBAF26dEGXLl0qLQ8JCcGiRYskiIiIiIiIiIiI6pvsExQii8UCg8HgsV9h27ZtJYiIiIiIiIiIiOqLrBMUJSUlePvtt/H5558jJyenyudxJg8iIiIiAjhIJhFRUybrBMWLL76ItWvXYtSoURgwYAD0er3UIRERERERERFRA5B1guK7777DxIkTsXz5cqlDISIiIiIiIqIGpJI6gOrYbDb069dP6jCIiIiavLKyMqlDICIiIqqWrBMUw4cPx+HDh6UOg4iIqEn77rvvMGXKFKnDIGoUHIOCiKh6SUlJOHnypNRheCTrBMXbb7+NU6dO4c0330RGRobU4RARETVJa9euRWFhodRhEBERkQwsWLAAr776qtRheCTrMSh69OgBu92OJUuWYMmSJdBqtVCp3HMqgiDg2rVrEkVIRERERERE1HTYbDapQ6iSrBMUDz74IARBkDoMIiIiIiIiImpgsk5QrFixQuoQiIiIiIiIiKgRyHoMCiIiIiKqm4KCApSWlkodRqPjIJlERE2X7BMUZrMZ//nPfzBkyBC0b98e7du3x5AhQ/Dmm2/CbDZLHR4RERGRLL3wwgtYsmSJ1GEQERHVmKy7eKSnp+PPf/4zLl++jE6dOmHAgAGw2+1ISkrC4sWLsXHjRuzatQsRERFSh0pEREQkKxkZGYqcBY0tKIiImi5Zt6B47bXXkJGRgXXr1uHo0aP48ssvnX+vX78e6enp+Ne//lWr11y0aBH0er3bv86dO1e7zenTp3HfffchIiIC3bp1w1tvvcWLHxEREREREVE9knULip9++glPPfUU7rvvvkrrRo0ahenTp2P9+vW1ft1OnTph+/btzsdqtbrK55rNZjz44IO46667sHfvXiQlJWH27Nnw9/fHs88+W+t9ExEREVHD4U0kIqKmS9YJiry8PERGRla5PjIyEvn5+bV+XY1Gg/Dw8Bo9d+PGjSgsLMSKFSvg5+eH7t274/z58/jwww/xzDPPcBpUIiIiIhlhgoKIqOmSdRePmJgYbN26FTabrdI6m82Gbdu2ISYmptavm5ycjG7duqFnz56YOnUqkpOTq3zu0aNH8ac//Ql+fn7OZcOHD0daWhouX75c630TERERUcNhgoKIauLw4cN45513pA6DKpB1C4oZM2bgb3/7Gx588EHMmjULnTp1AgCcP38eK5Jpw7QAACAASURBVFeuxK+//oply5bV6jX79euHDz/8EJ06dUJ2djYWL16Me++9F4cPH0ZoaGil52dmZqJ169Zuy1q0aOFc165dO4/7SUpKqlVcRERNgXgevlk8R0pDye87j105iouLnX9Lcew8TxI1DYsXL4bdbsdf/vIXqUORjBzPkbJOUDz++OPIycnBW2+9hf379zuX2+126HQ6/POf/8TkyZNr9Zr33HOP2+N+/frhtttuw/r16/HMM8943KZiNw4xM19d9476ujgREXkjniOl0bFjR8V2TVTyd05px15YWOj8uykfe1OOnagpEOt0Sv6tyfHYZZ2gAIC///3vmDJlCn7++WekpKQAAKKiojB06FCPLR5qKzAwEF27dsXFixc9rm/ZsiUyMzPdlmVnZwO43pKCiIjk78qVK/jkk0/w4osvunXbIyIiIiJ5kH2CAgBCQ0Mxbty4BnntoqIiJCUlYdCgQR7X9+/fH6+99hqKiorg6+sLAIiNjUWrVq0QHR3dIDEREVH927hxIxITE5GYmIg777xT6nCIqIFwDAoioqZL1oNkNoSFCxfiwIEDSE5ORlxcHKZMmYKCggI89thjAIDXX38dDzzwgPP5Dz/8MPz8/DBr1iycOXMGW7duxbvvvotZs2YptpksEVFTVFJSInUIRNQImKAgImq6ZNWCIiQkBCqVCmlpafDx8UFISMgNkwCCICAnJ6fG+7h27RqmTZuGnJwchIWFoV+/fti9ezeioqIAAOnp6bh06ZLz+c2aNcO3336LOXPm4O6774Zer8fs2bOrHK+CiIhIrux2O5Pr5PU8zf5GRERNg6wSFC+++CIEQYBGo3F7XJ/WrFlT7foVK1ZUWnbLLbdg165d9RoH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9+/PypUr2b59O2fOnGmuIQshhBBCiFugVreJt7etipenJ4pSvcSjBMDi/bAQQrQUVWFhYauf/7Zr1y7uvfde0tPT8avRUXjgwIFMnDiR3//+9zfcR6vVEhwczPvvv8+kSZPMx5csWcKJEyfYunUrYFricfLkScC0zdKoUaN49tlncXd3B+Djjz/mueee49KlS+ZKvKIohIWF8eabb/Lggw8227iFEEIIIYQQQghbYWftABoiJycHjUZzQ7Mef39/cnJyar1Pfn4+BoPBvHXSze4zdepUOnToQFBQEKdOneLll1/m+PHj/Pvf/zY/t6+vr8U0QZVKhZ+f302fWwghhBBCCCGEEI1j1QLFq6++yooVK+q8zebNm296naIo9a4vvP766+/z8MMPm7+OjY0lIiKCkSNHkpKSQlxcXK2P0dDnFkIIIYQQQgghRMNYtUCxYMECpk2bVudtwsLCOHDgAAaDgfz8fIslHnl5eQwaNKjW+/n6+qLRaG6Y5ZCXl3fDrIqaevfujUaj4dy5c8TFxREQEEBeXp5FQUJRFPLz8+t8HCGEEEIIIYQQQjScVQsUvr6+DdpjOS4uDnt7e3bs2MHUqVMByMjIIC0tjQEDBtR6HwcHB+Li4tixY4dFD4odO3YwceLEmz5XamoqBoOBwMBAAPr3709paSn79+83P9f+/fspKyu76XMLIYQQQgghhBCicTRLly79o7WDqI+TkxNZWVn885//pHv37hQVFbF48WI8PDx4+eWXzd2a+/XrB0B8fDwA7u7uvPHGGwQFBeHk5MTy5cvZu3cvb7/9Np6enpw/f55//OMfuLq6otVq2b9/P4sWLSI0NJQXXngBtVqNn58fBw8eZP369fTs2ZOMjAwWL15Mnz59rLLV6Pjx40lJSeHuu+9u8ee2Nhm77Y3dVscNtj3222HLPzcZu4zd1tjy2G+Hrf7cbHXcIGOXsbetsbeZfZhef/117rnnHubOncvYsWNxdXXls88+M+91DXDmzBny8/PN30+ePJk33niD5cuXk5CQwL59+/j8888JDw8HwN7enl27djF58mT69evHs88+y/Dhw9m0aZPF41YXRiZPnsyUKVPo3r077777bssNvhG++uorJk+eTFRUFF5eXvzwww/WDqlF6HQ6XnrpJQYNGkRISAidO3cmKSmJS5cuWTu0FvHqq6/Sr18/QkJC6NixIxMnTiQ5OdnaYbWop556Ci8vL1atWmXtUFrEggUL8PLysriMGjXK2mG1epIjJUfaao4EyZOSJxvGFvOk5EjJkSA5srXkyDaxiwdgngGxfPnym96msLDwhmNJSUkkJSXVevuwsDDzdqN18fb25h//+EfDg7Wi8vJy+vfvz7Rp0/jtb39r7XBaTHl5OT///DNLliyhR48eFBcX88ILL3D//ffz448/YmfXZv6r35KYmBhWrFhBx44dqaio4J133uH+++/n0KFDBAQEWDu8Zrdp0yYOHz5McHCwtUNpUcOGDbMoljo4OFgxmrZBcqTkSFvMkSB5sprkyfrZYp6UHCk5UnKkSWvIkW1mBoW4xmg0smzZMiIjI4mOjuaFF17AaDQCMGPGDJYuXcro0aOtHGXzuNnYPT09+fe//83kyZOJiYkhPj6elStXkpaWRlpamrXDbhJ1/d6nT5/O0KFDiYiIoGvXrrz22muUlJRw7NgxK0d9++oaN8DFixdZunQp7733Xrt7A1Hf2B0dHQkMDDRfvL29rRht6yE5UnKkLeVIkDwpebLxbDVPSo6UHCk5svXnSClQtEFffPEFGo2Gb775huXLl/O3v/2NDRs2WDusFtGYsZeUlADg5eXVkiE2m4aOXavV8uGHH+Lh4UGPHj2sEGnTqmvcer2epKQklixZQufOna0cadOr73f+008/ER0dTXx8PE8++SS5ublWjLb1kBwpOdKWciRInpQ82Xi2miclR0qOlBzZ+nOkFCjaoM6dO/P8888THR3NfffdR0JCArt27bJ2WC2ioWPXarW88MILjB07ltDQUCtE2vTqG/u2bdsIDQ0lMDCQd955h40bN7aLaXl1jfuNN97A29ubefPmWTnK5lHX2EeNGsXf//53Nm3axKuvvsqhQ4eYOHEiVVVVVo7a+iRHSo60pRwJkiclTzaereZJyZGSIyVHtv4c2b7msNiI2NhYi++DgoJaRbWrJTRk7Hq9nkcffZSioiL+9a9/tWR4zaq+sSckJPDDDz+Qn5/Phx9+yMMPP8y3335LUFBQS4fapG427j179rB27dp23byrrt/5lClTLG4XFxdHjx492L59e51bKdsCyZHXSI5s/zkSJE/WJHmyYWw1T0qOvEZypOTI1pojZQZFG2Rvb2/xvUqlQlEUK0XTsuobu16vZ968eaSmprJp0yZ8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\n",
      "text/plain": [
       "<Figure size 1080x360 with 6 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plot_scheme_bn(n_features, n_layers, hidden_units, ball_loader)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Exploding Gradients"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Data Generation & Preparation"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "X_reg, y_reg = make_regression(n_samples=1000, n_features=10, noise=0.1, random_state=42)\n",
    "\n",
    "X_reg = torch.as_tensor(X_reg).float()\n",
    "y_reg = torch.as_tensor(y_reg).float().view(-1, 1)\n",
    "\n",
    "dataset = TensorDataset(X_reg, y_reg)\n",
    "train_loader = DataLoader(dataset=dataset, batch_size=32, shuffle=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x288 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = distributions(X_reg, y_reg)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Model Configuration & Training"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [],
   "source": [
    "torch.manual_seed(11)\n",
    "model = nn.Sequential()\n",
    "model.add_module('fc1', nn.Linear(10, 15))\n",
    "model.add_module('act', nn.ReLU())\n",
    "model.add_module('fc2', nn.Linear(15, 1))\n",
    "optimizer = optim.SGD(model.parameters(), lr=0.01)\n",
    "loss_fn = nn.MSELoss()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "sbs_reg = StepByStep(model, loss_fn, optimizer)\n",
    "sbs_reg.set_loaders(train_loader)\n",
    "sbs_reg.capture_gradients(['fc1'])\n",
    "sbs_reg.train(2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[11402.750518798828, nan]"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sbs_reg.losses"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[ 2.11965225e+00 -4.36919605e+00 -1.04062873e+01 -1.31978525e+01\n",
      "  2.00864214e+01  5.52626748e+01  6.59739342e+00 -6.59043951e+00\n",
      " -1.84772668e+01 -1.10734661e+01  1.44460931e+01 -1.05419574e+01\n",
      "  1.82707417e+01 -4.65859312e+01  5.56300779e+00  2.31181872e+01\n",
      "  1.79879648e+01  8.46512737e+00  1.16871381e+01 -6.46955387e+00\n",
      "  2.21238665e+01 -1.19218020e+01 -8.84768396e-01  1.40629664e+01\n",
      " -2.56725244e+01  7.58224031e+00 -1.48623960e+00 -8.24287116e+00\n",
      "  1.08827572e+01 -7.76711910e-01  1.27160310e+01 -3.39174802e+01\n",
      " -2.70773718e+01 -7.08280798e+00  7.41404259e-01  3.29017272e-01\n",
      "  5.42439738e+00  4.82576235e+00  1.56531771e+01 -3.34186363e+00\n",
      "  5.83023831e+01 -1.39760193e+02  9.26939094e+01 -2.40153323e+02\n",
      "  2.24924479e+03 -2.07238688e+07  1.47232330e+19             nan\n",
      "             nan             nan             nan             nan\n",
      "             nan             nan             nan             nan\n",
      "             nan             nan             nan             nan\n",
      "             nan             nan             nan             nan]\n"
     ]
    }
   ],
   "source": [
    "grads = np.array(sbs_reg._gradients['fc1']['weight'])\n",
    "print(grads.mean(axis=(1, 2)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Gradient Clipping"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [],
   "source": [
    "torch.manual_seed(42)\n",
    "parm = nn.Parameter(torch.randn(2, 1))\n",
    "fake_grads = torch.tensor([[2.5], [.8]])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Value Clipping"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor([1.0000, 0.8000])"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "parm.grad = fake_grads.clone()\n",
    "#Gradient Value Clipping\n",
    "nn.utils.clip_grad_value_(parm, clip_value=1.0)\n",
    "parm.grad.view(-1,)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 360x216 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = compare_grads(fake_grads, parm.grad)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [],
   "source": [
    "def clip_backprop(model, clip_value):\n",
    "    handles = []\n",
    "    for p in model.parameters():\n",
    "        if p.requires_grad:\n",
    "            func = lambda grad: torch.clamp(grad, \n",
    "                                            -clip_value,\n",
    "                                            clip_value)\n",
    "            handle = p.register_hook(func)\n",
    "            handles.append(handle)\n",
    "    return handles"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Norm Clipping"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(tensor(2.6249), tensor([0.9524, 0.3048]), tensor(1.0000))"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "parm.grad = fake_grads.clone()\n",
    "# Gradient Norm Clipping\n",
    "nn.utils.clip_grad_norm_(parm, max_norm=1.0, norm_type=2)\n",
    "fake_grads.norm(), parm.grad.view(-1,), parm.grad.norm()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAU8AAADICAYAAABoD2MmAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nO3deVhV1frA8e8BZBBEcABUxAlkEgecEBNFDMTZnNKycrhOaHUtS715xTTJTNMcsFJSS/2ppTmbs4IIpjmTSk5oISiIijKec35/KOdyYvCAwAF9P8/j83T2Wnvtd+/rfd3DGhQpKSlqhBBCFImBvgMQQoiKSJKnEEIUgyRPIYQoBkmeQghRDJI8hRCiGCR5CiFEMUjyFC+ckJAQrKysWLNmjdZ2Dw8PPDw89BSVeNFI8hRFdu3aNT755BM6duxI/fr1qVGjBvXq1cPX15cpU6bw+++/6zvEcuXGjRtYWVnRvXt3fYciSpCRvgMQFcv8+fP57LPPUCqVNG3alNdeew1ra2sePnxITEwMYWFhhIaGMmPGDN577z19h6tl69at+g5BvEAkeQqdffXVV3z66afY29uzfPlyvLy88tRJTk5m2bJlPHz4UA8RFq5Bgwb6DkG8QOSxXejkxo0bzJ49G2NjYzZu3Jhv4gSoVq0aU6dOZfLkyZptud9B7tq1i65du1K3bl3q1aunqfPjjz/y5ptv0qxZM+zs7Khbty4BAQGsW7euwJhOnz5Nv379sLe3p27duvTu3Zvo6OgC6xf2znPLli307t2b+vXrY2Njg6enJ8HBwTx48CDfdqysrMjOzmbevHl4enpiY2ODu7s706ZNIyMjQ1N3zZo1NGvWDICjR49iZWWl+RMSEqKpt23bNnr16oWzszM2NjY4OzsTEBDAvHnzCjwfoV9y5yl0smbNGrKyshgwYACurq7PrG9klPev1i+//MKBAwfw9/dn2LBhJCQkaMo+/PBDnJ2d8fb2xs7OjqSkJPbs2cPYsWOJjY3lv//9r1Zb0dHR9OnTh4yMDHr27EmjRo24cOECPXv2xMfHp0jn9sEHH7BixQrq1KlDjx49sLKy4sSJEyxYsIA9e/bw66+/UqVKlTz7jRw5kmPHjtGlSxeqVKnC3r17WbRoEXfu3GHZsmXAk0Q7ZswYli1bRt26dRkyZIhm/1deeQWAFStW8MEHH2BjY0NAQAA1a9YkKSmJS5cu8f333/PBBx8U6XxE2ZDkKXQSFRUFQIcOHYrdxr59+9i4cSNdunTJU3bs2LE8j9UZGRn069ePr7/+mhEjRlCnTh0A1Go148ePJy0tjVWrVtG7d2/NPt999x2TJk3SOab169ezYsUKevTowXfffYeZmZmmbO7cuXz22WeEhIQwe/bsPPveuHGD6OhorKysAJg2bRqvvPIKGzZsIDg4GDs7O5o2bUrVqlVZtmwZDg4OTJkyJU87q1atwtjYmPDwcGxtbbXKkpKSdD4XUbbksV3oJOcusXbt2nnKbt68SUhIiNafRYsW5akXGBiYb+KE/N9HmpiY8K9//Yvs7GyOHDmi2R4dHU1sbCxt27bVSpwAI0aMoGHDhjqf19KlSzE0NGTRokVaiRNg4sSJVK9enQ0bNuS7b3BwsCZxApibmzNw4EBUKhWnT5/WOQYDAwOMjIwwNjbOU1a9enWd2xFlS+48hU7U6iczFyoUijxlt27dYs6cOVrbbGxsmDBhgta2Vq1aFdj+zZs3WbhwIYcOHeKvv/4iLS1Nqzw+Pl7z32fOnAGgffv2edoxMDDAy8uLq1evPuOMIC0tjbNnz2Jtba15zP4nY2Nj4uPjSU5Oplq1alplzZs3z1M/5+44JSXlmcfPMXDgQKZOnUrbtm3p27cv3t7etG3bFjs7O53bEGVPkqfQia2tLZcvX+bvv//OU9auXTutZJH7biw3GxubfLdfv36dzp07k5KSQrt27ejcuTOWlpYYGhoSFxfHunXrtD7C5HzEqVmzZpGO80/37t1DrVaTnJycJ/n/U2pqap7kWbVq1Tz1DA0NAVAqlTrFADBu3Dhq1qzJihUrWL58Od988w0ArVu35r///e9zvSoRpUeSp9CJl5cX4eHhHDlyhKFDhxarjfzuWgGWLFlCcnIyS5Ys4Y033tAq++mnn/J8cbe0tATgzp07+baXmJioUzw57bi5uREZGanTPqVlwIABDBgwgAcPHvDbb7+xe/duVq1axYABA4iIiMDR0VGv8Ym85J2n0Mkbb7yBkZERW7Zs4dKlSyXads4jdq9evfKUHT16NM+23F1//kmlUmk+bj2LhYUFbm5uxMbGluqHmZy7UZVK9cy6lpaW+Pn5MXfuXMaPH096ejr79u0rtdhE8UnyFDqpX78+H3/8MZmZmfTv37/A/pRFedeXw8HBAYDw8HCt7fv372f16tV56rdt2xYnJyeio6PZsmWLVtmKFSt0et+ZIygoiKysLMaNG8e9e/fylD98+JATJ07o3F5+rK2tUSgU3Lx5M9/yvXv3kpWVlWd7zkc6U1PT5zq+KB3y2C50NmnSJNRqNZ9//jkBAQE0b96cli1bYm1tzf3794mLi+PQoUMAeHt769zuiBEjWLNmDcOGDaNXr17UqlWLP/74g3379tG3b182bdqkVV+hULBo0SL69u3LsGHDtPp5Hjx4kC5duuh8t/bGG29w5swZvv32W5o3b46fnx8ODg6a84mMjMTX15e1a9fqfD7/ZG5ujpeXF8eOHWPQoEE0b94cIyMjvL29ad++PSNGjMDY2Jh27drh4OCAQqHg5MmTHDt2jPr169OnT59iH1uUHkmeokg++ugj+vXrR1hYGEeOHGHjxo08evQICwsLGjRowDvvvMPAgQNp2bKlzm02adKEbdu2MWvWLPbs2YNSqaRJkyb88MMPVK1aNU/yhCfvYHft2sXMmTPZv38/+/fvp2XLlmzfvp39+/cX6VH3iy++wN/fnxUrVhAREcG9e/eoWrUqtWvXZsSIEQwYMEDntgqybNky/vOf/xAZGcnevXtRqVR8/PHHtG/fnuDgYA4cOMC5c+fYv38/RkZG2Nvb8/HHHzN69OgCP8AJ/VLI6plCCFF08s5TCCGKQa/J8+jRo7z++uu4urrmO3ntP+XMi/jPP/I1UghR1vT6zvPRo0e4ubkxePBgxowZo/N+P//8M02aNNH8tra2Lo3whBCiQHpNnv7+/vj7+wNPRlnoqlq1ankmUBBCiLJUId95Dh06FEdHRwICAvL08xNCiLJQoboqWVhYMHPmTLy8vDAyMmLnzp0MGzaM0NBQBg0apO/whBAvkQqVPKtXr641U0+LFi1ITk5m4cKFkjyFEGWqQj6259ayZcsiDccrz2JjY/Udgs4qUqwg8ZamihRrSarwyfPcuXPy8UgIUeb0+tiempqquWtUqVTcunVLMzlt3bp1mTFjBidPntQsGbt27VoqVapE06ZNMTAwYPfu3Sxfvpzg4GA9noUQ4mWk1+R56tQpevbsqfmds4TD4MGDCQ0N5fbt21y7dk1rny+//JKbN29iaGhIo0aNWLx4sbzvFEKUOb0mzw4dOhQ6hVloaKjW7yFDhmitPiiEEPpS4d95CiGEPkjyFEKIYpDkKYQQxSDJUwghikGSpxBCFIMkTyGEKIYSS57fffedZklYIYR40ZVY8rx//36BS6sKIcSLptBO8idPntS5ob///vu5gxFCiIqi0OTZpUsXFAqFTg2p1Wqd6wohREVXaPI0MzPD3d2dYcOGPbOh3bt3s3379hILTAghyrNCk2ezZs1ISUnRaTz533//LclTCPHSKPSDUYsWLYiNjSU1NfWZDanVatRqdYkFJoQQ5Vmhd57Dhw+nSZMmZGdnP7Oh0aNHy9RwQoiXRqHJ09HREUdHR50asrS0xNLSskSCEkKI8k5GGAkhRDFI8hRCiGKQ5CmEEMUgyVMIIYpBkqcQQhSDTskzKyuLo0ePcuXKldKORwghKgSdkqehoSF9+vThwIEDpR2PEEJUCDolTwMDAxwcHHQaaSSEEC8Dnd95jhs3jpUrV3Lnzp3SjEcIISqEQkcY5Zaamoq5uTmenp50796d+vXrY2ZmplVHoVDw7rvvlniQQghR3uicPIODgzX/vX79+nzrSPIUQrwsdE6eZ86cKc04hBCiQtE5eTo4OJRmHEIIUaHonDxz3Lx5k6NHj3Lnzh369u2Lvb092dnZ3Lt3D2tra4yMitykEEJUOEXKdFOnTuXbb79FqVSiUCho2rQp9vb2PH78GE9PTyZPnkxQUFBpxSqEEOWGzl2Vvv76a0JDQwkKCuKXX37RmjXe0tKS7t27F3kZjqNHj/L666/j6uqKlZUVa9aseeY+Fy5coFu3btjZ2eHq6sqcOXNkBnshRJnTOXmuWrWKgQMHMmPGDDw8PPKUu7u7F3n45qNHj3Bzc+Pzzz/P0+0pPw8ePKBv377Y2Nhw4MABPv/8cxYtWsTixYuLdFwhhHheOj+237p1q9BuSFWqVOH+/ftFOri/vz/+/v7Ak074z7Jx40bS0tIIDQ3FzMwMNzc3Ll++zNKlSxk/frwsfSyEKDM633lWq1aN27dvF1h+4cIFatWqVSJBFeT48eO0a9dO6y7Vz8+P+Ph4bty4UarHFkKI3HROnv7+/qxatYqkpKQ8ZWfOnOHHH3+ke/fuJRrcPyUmJlKzZk2tbTm/ExMTS/XYQgiRm86P7VOnTmX//v14e3sTEBCAQqFgzZo1rFq1iu3bt1O3bl0mTZpUmrEC5Hk0z/lYVNgje2xsbKnGVJIk1tIj8ZaeihKrk5NTibWlc/K0tbXl0KFDzJw5k61bt6JWq9m4cSNVqlRh0KBBBAcHY2VlVWKB5cfGxibPHebdu3cB8tyR5laSF6w0xcbGSqylROItPRUp1pJUpH6eNWrUYOHChSxcuJC7d++iUqmoUaMGBgZlMyF9mzZtCA4OJj09HVNTUwAOHjxIrVq1qFevXpnEIIQQUIR3nkFBQZw4cULzu0aNGtjY2GgS58mTJ4vcQT41NZWzZ89y9uxZVCoVt27d4uzZs9y8eROAGTNm0KtXL039/v37Y2Zmxrhx44iJiWHr1q0sWLCAcePGyZd2IUSZ0jl5rl27lmvXrhVYfuPGDdatW1ekg586dQofHx98fHxIS0sjJCQEHx8fZs+eDcDt27e1jlm1alU2b95MfHw8vr6+TJo0iaCgIMaPH1+k4wohyoc5c+aUybeS0lBiA9GTk5MxMTEp0j4dOnQgJSWlwPLQ0NA829zd3dm1a1eR4xNClD+XLl2iQ4cO+g6jWApNnkePHiUiIkLze9u2bVy9ejVPvZSUFDZt2kSTJk1KPkIhRIWgVCoxNDQs0j4XL15kzJgxpRRR6So0eYaHhzNnzhzgSVegbdu2sW3btnzrOjk5ERISUvIRCiH0RqVSMXfuXFavXo1SqeSrr77irbfeIjY2lq1bt7J582aqVKnC4cOH+eCDDxg8eDATJkzg5MmTpKen4+3tzXfffYelpSUqlYoFCxYQFhZGdnY2n332GVevXsXV1VXfp1kshSbPCRMmMHz4cNRqNS4uLnz55Zf07NlTq45CoaBy5cqYm5uXaqBCiLIXEhJCREQEe/fupXLlygwYMAAbGxusrKw4f/48v/32G8HBwaxcuZKsrCz++usvRo8ejbe3N48fP2bgwIGsXLmSd999lzlz5nDo0CF27txJ1apVGThwILa2tlSpUkXfp1kshSZPc3NzTVI8c+YMNWrUoHLlymUSmBBCv+7evUtoaChHjhyhdu3aAPj6+nLq1CkAzp8/z/jx4+nYsSMGBgaYmJjQsGFDGjZsCICJiQmdOnUiJSWFu3fvsnjxYiIiIjQTq/v7+3Py5En9nFwJKPJM8jIZshAvh8OHD9OgQQNNMgS4d+8ebm5uwJP5LObPn6+1zy+//EJoaChXrlwhMzOTtLQ0FixYwOHDh2ncuDENGjTQ1E1MTNS0VREVqXf71KlTadGiBWPHjmX69OmaKehyJkP+5ptvSiVIIUTZS0pK0prsR6lUsm/fPtzd3YmLiyM7O5vGjRtryg8fPsz06dMJCQnh4sWLXL16lZo1a+Lh4UFSUpLWKMCsrCx27NhRoT8y63UyZCFE+eXs7Ex0dDRXr17lwYMHfPzxx1y7dg03NzfOnz+Pm5ub1ujC8+fPU6dOHZycnEhJSSEoKIg7d+7g4uKCk5MTUVFR/Pnnn9y/f5+JEydy69atl+POszQmQxZClF8dO3akf//++Pj44Ovri4eHB5UrV6Zx48acP38+Tx4YOHAg2dnZODs7M2jQIBo1aoSzszPGxsb4+vry2muv4evrS+fOnalRowampqY0atRIT2f3/PQ6GbIQonybN28e8+bNAyAsLIwOHTpgbGzMRx99lKduzZo12bNnj9a23PUWLFjAggULNL+nT59eSlGXDZ2TZ3mYDFkIUXaOHj2Kubk5Hh4eHDlyhNmzZxd5CPaLTOfkmTMZ8siRI/NMwpEzGfLw4cNLPEAhhH6MGDFCc8Nkbm5O+/btiYiIICEhgR49eug5Ov3T+Z3n1KlTMTAwwNvbm+DgYM1kyMOHD+fVV1+ldu3aFXaAvxAir969e2NpaQk8Waxxz549zJgxgzfffFM+DlOE5JkzGXLXrl3Ztm2bZjLkffv2MWjQIPbs2VPqkyELIUqfUqkkMjISY2PjfCcZt7CwoHXr1nqIrHypUJMhCyFKR2pqKgcOHGDXrl38+uuvJCcna8osLS3Jzs7m8ePHNGnShC1btlC9enU9Rls+FHs4UI0aNUoyDiFEGYuPj2f37t3s2rWLw4cPk5GRoSlr0KAB3bp1o2nTpkybNo3ExETatGnDhg0b5AnzqSIlz6ysLHbv3s3169dJSUnR6igPTyYJmTZtWokGKIQoGWq1mgsXLrBr1y527drF77//rilTKBS0adOGwMBAAgMDcXZ2RqFQMGfOHBITE/Hx8WHt2rVYWFjo8QzKF52T5/Hjx3nrrbdITEzMkzRzSPIUonzJysoiMjKSnTt3smvXLuLi4jRlZmZmdOrUicDAQAICArC1tc2z/+jRo3FxcSEgIECzbph4Qufk+f7776NUKgkLC6Nly5aar3BCiPIlJSWF/fv3s2vXLvbs2cODBw80ZTVr1qRr164EBgbSqVOnZ86SZmVlRe/evUs75ApJ5+R59epVpk2bRp8+fUozHiFEMcTFxWkexyMiIsjOztaUubi4aB7HW7ZsWeTZ3kX+dE6ezs7OZGZmlmYsQggdqdVqTp8+rXkcP3/+vKbMwMCA9u3baxJmRR4/Xp7pnDynTZvGe++9R+/evbXm9xNClI309HTCw8M1d5jx8fGaMgsLC/z8/AgMDMTf359q1arpMdKXg87Js0uXLsyaNYt27drRtm1bateunef2X6FQsHjx4hIPUoiXVVJSEnv27GHXrl0cOHCA1NRUTVnt2rU1d5cdOnQo8uq14vnonDwPHTpEUFAQmZmZhIeH5/s/lCRPIZ7flStX+PHHH/ntt9+IiopCpVJpyjw8PAgMDKRbt240a9YszzwTouzonDynTJlCjRo1WLZsGa1atcLY2Lg04xLipaFUKjlx4oTmcfzSpUuaMiMjIzp27EhgYCBdu3bVLIcj9E/n5Hn9+nWCg4Px9vYuzXiEeCk8fvyYgwcPaoZD3rlzR1NmaWlJu3btGDRoEH5+flStWlWPkYqC6Jw83d3dtca7CiGKJjExkd27d7Nz504OHTpEenq6pszBwYFu3boRGBiIt7c3169fx8nJSY/RimfROXnOmjWL4cOH4+vri5eXV2nGJMQLQa1Wc/HiRc3j+IkTJ7RG53l6emoSppubm7y/rGB0Tp7z5s3D3Nycbt264ejoiL29fb5f2zds2FDiQQpRUWRnZ3Ps2DFNwrx27ZqmLGcd85zhkLLyQsWmc/K8ePEiCoUCe3t70tPT+fPPP/PUkX85xcvo4cOH7N+/n507d7Jnzx5SUlI0ZdWrVycgIIDAwEB8fX1lYo0XiM7J89y5c6UZhxAVyq1btzTTuYWHh2uNvnN0dNQ8jrdp00aGQ76gij2fpxAvE7VazdmzZzWP42fOnNGUKRQK2rVrp+mwLh96Xg7FSp4PHz7kwYMHWp13c9StW7dIbS1fvpyvv/6ahIQEXFxcCAkJKbA7VHh4OD179syz/fjx4zRu3LhIxxXiWTIzM4mIiNAkzFu3bmnKKleuTOfOnTXvL2Vy8JdPkZLn6tWr+frrr7l69WqBdYrSnWnTpk1MnjyZefPm4eXlxfLlyxkwYABRUVGFJuGoqCisra01v+UvrigpKSkpmuGQ+/bt4+HDh5oyW1tbzd2lj48PZmZmeoxU6JvOyfOHH37gvffeo1OnTgwZMoSZM2cybtw4TE1NWbNmDba2towaNapIB1+yZAlDhgzh7bffBmDu3Lns37+fsLAwpk+fXuB+NWvWlDVURIm5fv26ZnaiyMhIlEqlpszNzU3z/rJFixayXpfQ0Dl5hoaG0qFDBzZv3kxycjIzZ87E39+fjh07MmHCBDp27Kg16eqzZGZmcvr0aSZMmKC1vXPnzkRHRxe6b6dOncjMzMTZ2ZkPP/wQHx8fnY8rhEql4tSpU5qEGRMToykzNDSkQ4cOmoRZv359/QUqyrUiTYb8zjvvAGj+9c3KygKezDb91ltvsXz5csaOHatTe0lJSSiVyjxLm9asWZPExMR897Gzs2P+/Pl4enqSmZnJ+vXr6d27N9u3b6d9+/a6nop4CaWnp2u+ju/evZuEhARNmaWlJV26dCEwMJBXX31VFjgTOtE5eZqbm2tGR1hYWGBoaMjt27c15dWqVePvv/8ucgD/7BuqVqsL7C/q5OSk9SWzTZs2xMXFsWjRokKTZ2xsbJHj0heJteTcu3eP8PBwwsPDiYqK0hoOaWtrS8eOHfHx8cHT05NKlSoBcOfOHa1x5vpU3q9vbhUl1pLsCaFz8nRyctI83hgZGeHh4cH//d//MWjQIJRKJevXr6devXo6H7h69eoYGhrmucu8e/dunrvRwrRs2ZJNmzY9M/aKIDY2VmJ9TrGxsZrH8ejoaK3hkM2aNdM8jnt4eJTrQR3l9frmpyLFWpJ0Tp7du3cnNDSU9PR0TE1N+fDDDxk6dCj169dHoVDw6NEjli1bpvOBjY2Nad68OQcPHtRaF+ngwYP06tVL53bOnTuX76p/4uWgVCqJjo7WdCfKPfLN2NgYHx8fzVK6r7zyih4jFS8anZPnhAkTtD7udO/enZ07d7JlyxYMDQ3p2rVrkf9yBgUFMXr0aFq2bEnbtm0JCwvj9u3bDBs2DHiy7CnAN998A8DSpUtxcHDA1dWVzMxMNmzYwI4dO1i9enWRjisqttTUVA4cOKCZzi139zhra2v8/f3p1q0bvr6+mlVeK8pjpag4dEqeWVlZHD9+HDs7O63FpLy8vJ5rhqXXXnuN5ORk5s6dS0JCAq6urmzYsEEz4WvuTsk5cUybNo34+HhMTU019f39/Ysdw4uqirs7j9atQ+XhQRUPDx5t24aqQYMyjcFkzhwUd++SPnfuc7cVHx+v+eBz+PBhMjIyNGUNGjTQPI57eXlhZGRU4scX4p90Sp6Ghob06dOH2bNnl/hKfCNHjmTkyJH5lu3YsUPr93vvvcd7771Xosd/IaWkoEhIQOXsDAoFD3OtrFiWDC5dQtmhQ7H2VavVxMTEaN5f/v7775oyhUJB69atNQnT2dk53/eXz3N8IZ5Fp+RpYGCAg4OD1uJTovwyvHABlaMj6HlBMMOLF8kcM0bn+llZWURGRmoSZlxcnKassokJPr6+dOvWjYCAAJ3ecxf1+EIUhc7DJcaNG8fKlSvLTTcO8USln37ComNHLB0csGjeHMPwcAwvXEDp5vakfPVqKg8Z8r/6GzZg7u+P2bBhVGncmCru7hjt3fvMMs3+q1Zh0bYtzTt1onL//ihy/j6oVJjMn0+VJk2o4uJCpZ9/xuDqVZSurvkHrlJhMmcO5q6uVKpXj9Bu3bCsWZO3e/fmm2++4dW4OA5UqsShRo3IqFyZ+A8+YCsQNHMmTq1aUXnQIMg9KKOoxxfiOen8wSg1NRVzc3M8PT3p3r079evXzzO2V6FQ8O6775Z4kCJ/xosWYbxmDY+XLUPVtCkGf/yB2sIC459+QuXuDoDh+fMomzTR7GMQE4Ph2bNkjh1L2rffYrxsGWb//jcPz58vtAzAZN48Km3dyuN167icno5HaCims2aRtnAhJnPmYHToEKk7d6KuWhXzgQNR29pClSp54o6Li+Phv/+N+YkT9EpN5b5Sya7ISBIAW2dnhnXrxvtXr1J33z4ez5xJWteuGFy5Qmbr1mR7e6N4/JjKAwdivHIlmU//vhXl+EKUBJ2TZ3BwsOa/169fn28dSZ5lR3H3LqZffEHqzp2oPDwANAnTICaGrMBA4EnyzMj16GoYE0PGuHFk9e0LQNbrr2M2bRqkpxdapnj4EJMvvyQ1PBxVw4aoY2PJHDoUsw8+QHH3LiaLF5MaEYH66ce+bH9/DE+eBJ68vzxz5gw7duxg165d3D5/nqtAC+CWgQFe3t5km5hgmZlJ9NP33ObdupExYQLZ3bo9OTcnJ1RP+xKqTUzI7tQJxdNJh591fCFKg87JM/f8hUL/jA4dQunmpkmcGmo1hn/8oXlsN7xwQauOYUwM6VOnan4r7txBbWEBpqaFlhlt3w6ZmVh07gxAc5UKQwMDlB4eGB0+jLJxY62v+ar4eK6ZmfHlxIns3r1ba/TZ2yYm3DExYdIXX+Dv70+1atUwnTQJKlcmZwyQ4YULpM2f/7/z/eUXTEJDMbhyBUVmJqSlkbZgwZOyfI6vSEzUXAMhSoPOyVPWiy5fFPfuoc5nSVrFjRtgYIDawQFFXBwolahyJrdIScHg1i3Uuabwq7RlC1lduhRe9vR42T168HjVKkB7VInxt9+irlmT5ORkfv31V/bs2MGCHTv4r1rNT0/bql27tmY6t1cvXcLs8GFef/31J4VKJUb79pExZcqTY8XFQXY2qqdztBoePozZ9Ok8/v57lE2bAlClaVOUT/9RUCQloc49Ki0ri0o7dpA2a1bxL7AQz8gBE7MAABgBSURBVCAzyVdQyqZNMZ05E4Nz51A1aYLB1auQnY1BbOz/7jrPn0fp7g5Pu/EYxsSgNjSk0k8/kTl+PEb792O8YgWPtm8vtAxA2awZJiEhGJw+jap5cwxSUzHasYPLLi7EXLhA7/37CWzUiHi1mnmAA5Dh5MRHffvSrVs3mjVrpulOZFCpEkZffIHB1auoatTA9NNPMbx2TTtuNzd4OgGN4fnzqOrUQenkhCIlBdP//AfFnTuoXFyAJ4/0RrNmYfDnn6hq1sTsk08wuHULldx5ilJUpOR58eJFli1bxunTp7l//36emeQVCgWnT58u0QBF/pRt25L+4YeYv/46ipQUVA4OPA4NxTAm5knCJFfyfMowJoasAQMwOn4c0/r1UTo68njNGlQuLhgvX15gGYCyTRsyPvqIym+9hToxkfoGBmytVIkh9+8DsAw4Dtw3M+MvLy9UkZH8EBUF+azfo+zYkcz+/bHw8UFla0vGu++irlz5f3ea589r7ioBsgYOpNKWLVg6O6N0dSU7IOBJH1ZjYwCyfX3JfO01LHx9UdnYkNWrF2pTU1Ql3CdZiNwUKSkp6mdXg+joaPr06YOFhQWenp7s2bMHHx8fMjIyOH78OC4uLjRv3pylS5eWdswvrNKeYMF04kRUjRqRGRRUpLLHjx9z8OBBzXDI3N3VLC0tNatD+vn5UTWfVwnPYhwWhtGvv/K4gA+RJaGiTV5RkeKtSLGWJJ3vPGfNmkXt2rXZv38/SqUSR0dHJk6cSMeOHYmOjmbgwIHMkndM5ZphTIzm6zUAmZmYjRuH4uHDJ12U+vV78ljeuDGJqans3r2bnTt3cujQIa3p3BwcHPD29mbw4MF4e3trpnPTOY7ffkNla4va3h6jw4cxmT2bx+vWldRpClEmdE6ep06dYtKkSVhZWXHv3j0AzWN727Ztefvtt/nss8/o/PRrrCh/DGNiUOa6Q1A8fEil7dtRPE2MposXY7p4MWogE3gfyHkx4+npqRkO6ebmxp9//lnsuw3Ds2epPGsWiuxslI0akbZ0KcrWrZ/r3IQoazonT4VCoXkkq1y5MqC92JujoyPLly8v4fBESXqQa7gjQJa5OSffew+T//s/7G/exPrpP4YKwBro1qULXXr0ICAggFq1apVYHJkjRpA5YkSJtSeEPhSpq1LOqpkmJibUq1ePgwcP0q9fPwAiIyOpVq1a6UQpSkxqfDyxixdjsH07TeLiaJVrsuAsoBKQYW7O/Q0b+FGWNhGiQDonT19fX7Zs2cKMGTNQKBS8/fbbfPrpp8TFxaFWq4mIiOD9998vzVhFMSWcPEnckiVUPXSIpsnJ1MlVdqVSJf5ycaFlUhLmf/+Nyt6ezK1bMWnYUG/xClER6Jw8P/zwQ/r37092djaVKlXi/fffR61Ws3nzZgwNDZk8eTITJ04szViFjtQqFVc3bybp+++pc/IkbmlpNH5apgROV6nC3XbtsP3Xv3B49VXqjhyJ8U8/oWzUiEdbtqC2t9dn+EJUCDonTysrK5o3b675rVAomDhxoiTMciIzNZXL331HxsaNNL50Cc9ca48/As7Y2pL26qs0nDCBBs7O5J4WObtrV1CrSZ89+8lkGkKIZ3pm8szIyGDnzp1cv36datWqERAQgJ2dXVnEJp7hwY0bxH79NSa7d9Pkr7/I/YYywcCAPxwdMezbF6cxY3C3ti6wnaz+/cnq37/0AxbiBVJo8kxISKBbt25cu3ZNswqhubk569evl3XS9eTviAhuhYZSPSKCpvfvUzdX2SUTE262aEHVoUNxHDSIFkYy+laI0lLo/7tmzZrF9evXGTduHD4+Ply9epW5c+fy0UcfcfTo0bKK8aWmys7mz/Xrub96NQ6nT+OakUHO9L7ZwMmqVbnXoQN1xoyh9iuvIM8EQpSNQpPngQMHGDx4sNbIIRsbG0aOHMlff/1FnTp1CtlbFFdacjKXQ0NR/fILrleu0DrXHAL3gXP29mR17YrjhAk41qunv0CFeIk987G9bdu2Wtu8vLxQq9XcunVLkmcJSr50iZuzZpF1/DhNExLwyVX2l6Ehl5ydMRkwgMb/+hceFhZ6i1MI8UShyVOpVGJqaqq1Led37rHOonji9u4l4dtvqRkVhcfDh1pfwGPMzPi7VSuqvfMODfv2paWBzstNCSHKwDO/KFy/fp2TuZYzePB00a3Y2Fgs8rkDatmyZQmG92JRZmZyedUqHq1dS4Pz5/HIyiJn4rUM4HcrKx75+eEwbhx1WrZE7uuFKL8KnZLO2to63/Ww1Wp1nu0523KPdxfwKCGBy0uWoNi2Dffr16mRazjkPYWC8w4OKHv2xHHsWG4/flxhpvaqaNOQSbylpyLFWpIKvfNcsmRJWcXxQrlz5gzXFy+mysGDNLt7l065ym4YGXHF3R2z11+n8bBhNM31WuR2bGyZxyqEKJ5Ck+eQXOt9i4KpVSqubdtGUlgYdr/9RpPHj3F8WqYCzpmbk+Dlhc3IkTgEBMj7SyFeANKLupiyHj/m8ooVpK9fj9Mff9Ai13DINOCMjQ2P/PyoHxSEQ5MmyPJ5QrxYJHkWwf24OK4sXkylXbtocvMm3rnK7igUxDRsiKJPH5zGjsU11yqUQogXjyTPZ4iPiuLW0qVYhYfT7N49rTvIP42NudGsGVXeeAPHIUNo/nRBMiHEi0+S5z+oVSr+3LCBlFWrsD91Cpf0dFyelimBU5aW3G3fntqjRmHv60vNwhoTQrywJHkCGQ8ecHnZMrI2bcLl8mVa5RoOmQqcrVWL9IAAGk2YQMNGjZBpgoUQev/su3z5cpo2bYqtrS0dO3YkMjKy0PoRERF07NgRW1tbmjVrRlhYWLGOm3LlCifef58Lrq6YOTjwyuzZ+F68SC2VingDAw66uBDxn//w6Pp13P/4g5YLFmAl64ALIZ7S653npk2bmDx5MvPmzcPLy4vly5czYMAAoqKiqFu3bp76169fZ+DAgbzxxht8++23REVF8cEHH1C9enV69+79zOPdOnSIv5cto0ZkJE0fPCD3lBoXTU251aIF1u+8Q6MBA/CU7kRCiELoNXkuWbKEIUOG8PbbbwMwd+5c9u/fT1hYGNOnT89T//vvv8fOzo65c+cC4OzszIkTJ1i8eHGByfPatm3cXbiQ+mfP4p6ZifvT7VnAKWtrUnx8sB87llpeXpTc+pBCiBed3pJnZmYmp0+fZsKECVrbO3fuTHR0dL77HD9+PM+68H5+fqxbt46srCwqVaqkVfYoMRGXoUPJGcOTApyvW5fs7t1pFBSEUz53t/pUkYa4VaRYQeItTRUp1pKkt+SZlJSEUqmkZk3t79U1a9YkMTEx330SExPp1KlTnvrZ2dkkJSXlWR7ErFo1Itq0wSAtDdOBA2k8YgQeT9ecF0KI56H3r+0FTTBSlPr5bQcwMDKi9Z49JRClEEJo09tXkerVq2NoaJjnLvPu3bt57kZz2NjY5FvfyMiIatWqlVqsQgjxT3pLnsbGxjRv3pyDBw9qbT948GCe2etztGnThkOHDuWp36JFizzvO4UQojTptT9OUFAQa9euZfXq1Vy6dImPP/6Y27dvM2zYMABGjx7N6NGjNfWHDRvG33//zeTJk7l06RKrV69m7dq1jB8/Xl+nIIR4Sek1eb722muEhIQwd+5cOnToQFRUFBs2bMDB4ckI8lu3bnHr1i1N/fr167NhwwYiIyPp0KED06dPx8LCglGjRpVpB/viKMpggPDwcKysrPL8uXz5cpnEevToUV5//XVcXV2xsrJizZo1z9znwoULdOvWDTs7O1xdXZkzZ47mfXR5ivXGjRv5Xtt9+/aVeqwA8+fPx9fXl7p169KoUSMGDRpETEzMM/fTx/UtTqz6vL7fffcd3t7e1K1bl7p16/Lqq6/y66+/FrrP81xXvX8wGjlyJCNHjsy3bMeOHXm2vfLKKxw5coRNmzYxatSoMutg/zyKOhggR1RUFNbW1prfNcpopqZHjx7h5ubG4MGDGTNmzDPrP3jwgL59++Lt7c2BAweIjY0lKCiIypUr5+mKpu9Yc/z88880adJE8zv3dS5NERERjBgxAk9PT9RqNbNnz6ZPnz5ER0cXGIO+rm9xYs2hj+tbu3ZtZsyYQaNGjVCpVKxbt4433niDQ4cOacWS43mva6HLcJRnfn5+uLu78/XXX2u2eXp60rt373w72E+fPp1t27bx+++/a7ZNmDCBixcvsnfv3nIVa3h4OD179uTKlStUr169VGN7ljp16vDFF1/wxhtvFFhnxYoVBAcHc/nyZczMzIAnAx7CwsKIiYkptPdEWcd648YNmjVrpnlXrm+pqak4ODiwZs0aAgMD861TXq6vLrGWt+tbv359pk+frnkVmNvzXtcKOQYxp4P9PzvMF6eD/alTp8jKyipXsebo1KkTzs7O9OrViyNHjpRajM/r+PHjtGvXTvMXEJ5c2/j4eG7cuKHHyAo2dOhQHB0dCQgIYMuWLXqLIzU1FZVKhZWVVYF1ysv11SXWHPq+vkqlkp9//plHjx7Rpk2bfOs873WtkMmzuB3s86uf08G+PMVqZ2fH/Pnz+eGHH/jhhx9wcnKid+/eHD16tNTifB4FXducsvLEwsKCmTNn8v3337Nx40Z8fHwYNmwY69ev10s8kydPxsPDo8D/g0P5ub66xKrv63vhwgXq1KmDjY0N//73v/nxxx9xd3fPt+7zXle9v/N8HqXZwb6kFSVWJycnrSFvbdq0IS4ujkWLFtG+fftSjbO49Hlti6J69epa77NatGhBcnIyCxcuZNCgQWUay9SpU4mKimL37t0YGhoWWlff11fXWPV9fZ2cnAgPD+f+/fts3bqVsWPHsn37dtzc3PKt/zzXtULeeVakDvbFiTU/LVu25OrVqyUdXoko6NoCRTpHfdHHtZ0yZQo///wzW7dupX79+oXW1ff1LUqs+SnL62tsbEzDhg1p0aIF06dPx8PDg6VLl+Zb93mva4VMnhWpg31xYs3PuXPnsLW1LenwSkSbNm04duwY6enpmm0HDx6kVq1a1KtXr5A9y4eyvrYff/wxP/30E1u3bqVx48bPrK/P61vUWPOjz7+7KpWKzMzMfMue97pWyOQJFauDfVFjXbp0Kdu3b+fKlSv88ccfzJgxgx07dvCvf/2r1GOFJx8Gzp49y9mzZ1GpVNy6dYuzZ89y8+ZNAGbMmEGvXr009fv374+ZmRnjxo0jJiaGrVu3smDBAsaNG1fqj5VFjXXt2rVs3LiRS5cuERsby6JFi1i+fDmjRo0q1ThzfPjhh6xdu5bly5djZWVFQkICCQkJpKamauqUl+tbnFj1eX2Dg4OJjIzkxo0bXLhwgRkzZhAREcGAAQPyjfV5r2uFfef52muvkZyczNy5c0lISMDV1TVPB/vccjrYT506lbCwMOzs7JgzZ06p9/EsTqxZWVlMmzaN+Ph4TE1NNfX9/f1LPVaAU6dO0bNnT83vkJAQQkJCGDx4MKGhody+fZtr165pyqtWrcrmzZv58MMP8fX1xcrKiqCgoDL5h6mosQJ8+eWX3Lx5E0NDQxo1asTixYvL7H3n8uXLAfL8vfv444+ZMmUKQLm5vsWJFfR3fRMSEhg1ahSJiYlYWlri7u7OTz/9hJ+fX76xPu91rbD9PIUQQp8q7GO7EELokyRPIYQoBkmeQghRDJI8hRCiGCR5CiFEMUjyFEKIYpDkKYQQxSDJUxRozZo1WrOBV69eHTc3N8aPH8/t27f1HV6pS01NJSQkhPDw8DI/dmJiIqNGjaJBgwbUqVOHnj17cvr06TKPQxSswo4wEmVn8uTJNGjQgIyMDKKioli7di1Hjx4lMjJSay7EF82jR4+YM2cOAB06dCiz46alpdGrVy8SEhIICgqiatWqrFixgh49erBv3z5cXFzKLBZRMEme4pn8/Pxo3bo1AG+99RbW1tYsWbKEnTt30q9fv+dqW6lUolQqMTY2LolQK4RnnXNYWBgXL15k586deHt7A9CvXz9atWrFp59+ytq1a8syXFEAeWwXRebj4wM8WRcK4N69e3zyySd4e3tjb29PnTp16NGjB1FRUVr75SwO9tVXX7F8+XI8PT2xsbHRzKi/aNEiAgICaNiwIba2tnh7e7N69eo8x/fw8KBfv34cO3YMPz8/7Ozs8PLy0sxctW/fPnx8fDRt5Ddj/+3bt3nvvfdwcXHBxsYGT09PFi5cqJnP8caNGzg7OwMwZ84czauLsWPH6tyGLuecn82bN9OkSRNN4gSoVq0a/fr1Y+/evTx8+LDg/3FEmZE7T1FkOZMr5MyDev36dbZs2ULv3r1p2LAh9+/fZ/Xq1fTu3ZuDBw/mmYh2w4YNpKam8s4772BhYYGdnR3wZDapLl260KdPHxQKBdu3b+fdd99FpVLxzjvvaLVx48YNhg0bxtChQ+nfvz9Lly5l8ODBLF26lE8++YThw4djYmLCwoULGTp0KOfOncPExASAO3fu0KVLF7Kzs3n77bexs7Pj2LFjTJ8+nfj4eD7//HNq1KjB3LlzmTRpEj169NBMPtKgQQOd29DlnP9JpVJx/vz5fCfSaNWqFd999x1//PFHobO5i7IhyVM804MHD0hKSiI9PZ3o6Gi++OILzMzMCAgIAMDNzY3Tp09rzTD+zjvv0Lp1a5YtW6a18B1AXFwcJ0+ezJNATp48SeXKlTW/x4wZQ58+ffj666/zJM8///yTHTt2aGbWb9q0Kd27d2f06NFERkZqZuK3t7dn2LBh7N69WzM70KxZs8jIyODo0aPY2NgAT6YstLOzY/HixYwdO5Z69erRq1cvJk2ahLu7e55kpmsbzzrnf7p37x7p6en5zn+Zs298fHyhbYiyIY/t4pn69etHo0aNcHd3Z/jw4dja2rJ+/Xpq164NgImJiSZxpqenk5ycjEqlomXLlvl+Ie7evXu+SSQncWZlZXHv3j2SkpLw8fHh6tWr3L9/X6uuo6Oj1pIkrVq1Ap5McJt7CZOWLVsC/3vFoFar2bJlCwEBARgaGpKUlKT54+fnh0qleuZaUcVpo6Bz/qe0tDQAzV1ybqampgBak/cK/ZE7T/FMc+bMwdnZGRMTE+zt7bG3t9eaLFalUrFw4UJWrlyZZ9XB/GbkLmgphx07djB37lzOnTuHUqnUKnvw4AFVq1bV/La3t9cqNzExwcTEhDp16mhtt7S0BCAlJQV4ssxCSkoKP/74Iz/++GO+ceQsxVCQ4rSh6/IVOb0XMjIy8pTlJM2cJCr0S5KneCZPT0/N1/b8LFiwgE8//ZTBgwfzySefUK1aNQwNDZk/f36eiXKBfLs3RUVF8eabb+Ll5cVXX32FnZ0dxsbG7Nmzh6VLl6JSqbTqF7QIWUHbcz7i5LTTv39/3nzzzXzrNmzYsMBzLW4bunbpsra2xsTEhISEhDxlOX1ra9WqpVNbonRJ8hTPbdOmTbzyyiuEhoZqbQ8JCdG5jV9++QVTU1M2b96sdWdV0h3Ua9SogaWlJdnZ2XTq1KnQugUtxVCUNorKwMAADw8PTp48mafsxIkTVKpUCVdX1xI9pigeeecpnpuhoaFW9xyA6Ohojh8/XqQ2FAqF1h1mzqNxSTI0NKRXr15s37493/ex9+/fJysrC/jfO9icR/7itFEcvXv35vz58xw7dkyzLTk5mZ9//hk/Pz+qVKlS7LZFyZE7T/HcAgMD+fzzzxk9ejTe3t5cuXKFlStX4uLiorVYWGG6du3KkiVL6Nu3L4MGDeLevXusWrUKGxubfB9hn0dwcDBHjx6la9euDB06FDc3Nx4+fEhMTAzbtm3j999/x9bWFgsLC5ycnNi0aROOjo5Uq1aNevXq0apVK53bKI4RI0bwww8/MGTIEMaPH4+lpSUrVqwgIyOD//73vyV6LUTxSfIUz23ixImkpaWxceNGtmzZgqurK2FhYfz8889ERETo1EaHDh0IDQ3lq6++YsqUKdSuXZtRo0ZhZWVV4gud1ahRg/379zN37lx27NjBypUrqVq1Ko6OjkyePBlra2tN3SVLljBlyhQ++eQTMjIyGDx4MK1atSpSG0VVuXJltm3bxrRp01i0aBGZmZl4enqydOnSPH1mhf7IAnBCCFEM8s5TCCGKQZKnEEIUgyRPIYQoBkmeQghRDJI8hRCiGCR5CiFEMUjyFEKIYpDkKYQQxSDJUwghikGSpxBCFMP/A7KaHLzt4KWJAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 360x216 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = compare_grads(fake_grads, parm.grad)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [],
   "source": [
    "setattr(StepByStep, 'clipping', None)\n",
    "\n",
    "def set_clip_grad_value(self, clip_value):\n",
    "    self.clipping = lambda: nn.utils.clip_grad_value_(self.model.parameters(), clip_value=clip_value)\n",
    "    \n",
    "def set_clip_grad_norm(self, max_norm, norm_type=2):\n",
    "    self.clipping = lambda: nn.utils.clip_grad_norm_(self.model.parameters(), max_norm=max_norm, norm_type=norm_type)\n",
    "    \n",
    "def remove_clip(self):\n",
    "    self.clipping = None\n",
    "\n",
    "def _make_train_step_fn(self):\n",
    "    # This method does not need ARGS... it can refer to\n",
    "    # the attributes: self.model, self.loss_fn and self.optimizer\n",
    "\n",
    "    # Builds function that performs a step in the train loop\n",
    "    def perform_train_step_fn(x, y):\n",
    "        # Sets model to TRAIN mode\n",
    "        self.model.train()\n",
    "\n",
    "        # Step 1 - Computes our model's predicted output - forward pass\n",
    "        yhat = self.model(x)\n",
    "        # Step 2 - Computes the loss\n",
    "        loss = self.loss_fn(yhat, y)\n",
    "        # Step 3 - Computes gradients\n",
    "        loss.backward()\n",
    "\n",
    "        if callable(self.clipping):\n",
    "            self.clipping()\n",
    "        \n",
    "        # Step 4 - Updates parameters using gradients and learning rate\n",
    "        self.optimizer.step()\n",
    "        self.optimizer.zero_grad()\n",
    "\n",
    "        # Returns the loss\n",
    "        return loss.item()\n",
    "\n",
    "    # Returns the function that will be called inside the train loop\n",
    "    return perform_train_step_fn\n",
    "\n",
    "setattr(StepByStep, 'set_clip_grad_value', set_clip_grad_value)\n",
    "setattr(StepByStep, 'set_clip_grad_norm', set_clip_grad_norm)\n",
    "setattr(StepByStep, 'remove_clip', remove_clip)\n",
    "setattr(StepByStep, '_make_train_step_fn', _make_train_step_fn)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [],
   "source": [
    "def set_clip_backprop(self, clip_value):\n",
    "    if self.clipping is None:\n",
    "        self.clipping = []\n",
    "    for p in self.model.parameters():\n",
    "        if p.requires_grad:\n",
    "            func = lambda grad: torch.clamp(grad, -clip_value, clip_value)\n",
    "            handle = p.register_hook(func)\n",
    "            self.clipping.append(handle)\n",
    "\n",
    "def remove_clip(self):\n",
    "    if isinstance(self.clipping, list):\n",
    "        for handle in self.clipping:\n",
    "            handle.remove()\n",
    "    self.clipping = None\n",
    "\n",
    "setattr(StepByStep, 'set_clip_backprop', set_clip_backprop)\n",
    "setattr(StepByStep, 'remove_clip', remove_clip)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Model Configuration & Training"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [],
   "source": [
    "def weights_init(m):\n",
    "    if isinstance(m, nn.Linear):\n",
    "        nn.init.kaiming_uniform_(m.weight, nonlinearity='relu')\n",
    "        if m.bias is not None:\n",
    "            nn.init.zeros_(m.bias)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [],
   "source": [
    "torch.manual_seed(42)\n",
    "with torch.no_grad():\n",
    "    model.apply(weights_init)\n",
    "    \n",
    "optimizer = optim.SGD(model.parameters(), lr=0.1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [],
   "source": [
    "sbs_reg_clip = StepByStep(model, loss_fn, optimizer)\n",
    "sbs_reg_clip.set_loaders(train_loader)\n",
    "sbs_reg_clip.set_clip_grad_value(1.0)\n",
    "sbs_reg_clip.capture_gradients(['fc1'])\n",
    "sbs_reg_clip.train(10)\n",
    "sbs_reg_clip.remove_clip()\n",
    "sbs_reg_clip.remove_hooks()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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ERGRjlwuh729PR4/fix1KSbl8ePHqFy5stRlVDj29vaQy0sWZRmAy4kGDXRd4M2bLfXr5s+3Rq9eabBgH5+IiEyEXC7nwzDySUpKgrOzs9Rl0FMYncqR/PMC//WXDL/+yt9hiIiIiIqDAbgccXPTol8/w7HA8+dbcywwERERUTEwAJczU6dmQRDyusCXL7MLTERERFQcDMDlDLvARERERC+HAbgcYheYiIiIqOQYgMshd/eCXeAFC9gFJiIiInoRDMDlVP4u8KVLMuzcyS4wERER0fMwAJdT7u5a9O3LLjARERFRcTEAl2P5u8B//inDrl3sAhMRERE9CwNwOebhocWbbxbsAvMR7ERERERFYwAu5/J3gS9eZBeYiIiI6FkYgMu5hg216NOn4LzA7AITERERFY4BuAIorAv822/sAhMREREVhgG4AmjUSIvevdkFJiIiInoRDMAVxAcfZBksx8XJsHs3u8BERERE+TEAVxCFdYEjItgFJiIiIsqPAbgC+eCDTIPluDgZfv+dXWAiIiKipzEAVyCenlr06sUuMBEREdGzMABXMPm7wBcuyBAdzS4wERERUS4G4AqmcWMtevbM3wW2YheYiIiI6H8YgCug/F3g8+fl7AITERER/Q8DcAX0+usFu8Dz57MLTERERAQwAFdY+bvA587JsWcPu8BEREREDMAV1Ouva/HGG+wCExEREeXHAFyB5e8C//GHHHv3sgtMRERE5o0BuALz8tKiRw92gYmIiIiexgBcweXvAp89K8e+fewCExERkfliAK7gmjTRont3doGJiIiIcjEAm4HwcMMu8Jkzcuzfzy4wERERmadyH4C7dOmCNm3aoHXr1pg/f77U5ZikJk206NaNT4cjIiIiAipAAI6MjMTRo0dx5MgR7Nu3D3FxcVKXZJIK6wIfOMAuMBEREZmfch+AK1euDADIzs5Gdna2xNWYrqZNtejalV1gIiIiIkkD8NGjRzFw4EA0bNgQSqUS69evL7DPypUr4eXlBScnJwQGBuLYsWMF9unYsSMaNGiAdu3awcvLyxill0vTphl2gU+fliMmhl1gIiIiMi+SBuD09HQ0atQIERERsLGxKbA9KioK06ZNw+TJkxEbG4uWLVsiODgYCQkJBvvt378fly9fxsWLF3H58mVjlV/uNG2qRVAQu8BERERk3iQNwF26dMHMmTPR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\n",
      "text/plain": [
       "<Figure size 720x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = sbs_reg_clip.plot_losses()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(-16.82363797982534, 15.610697985589503)"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "avg_grad = np.array(sbs_reg_clip._gradients['fc1']['weight']).mean(axis=(1, 2))\n",
    "avg_grad.min(), avg_grad.max()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Clipping with Hooks"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [],
   "source": [
    "torch.manual_seed(42)\n",
    "with torch.no_grad():\n",
    "    model.apply(weights_init)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [],
   "source": [
    "sbs_reg_clip_hook = StepByStep(model, loss_fn, optimizer)\n",
    "sbs_reg_clip_hook.set_loaders(train_loader)\n",
    "sbs_reg_clip_hook.set_clip_backprop(1.0)\n",
    "sbs_reg_clip_hook.capture_gradients(['fc1'])\n",
    "sbs_reg_clip_hook.train(10)\n",
    "sbs_reg_clip_hook.remove_clip()\n",
    "sbs_reg_clip_hook.remove_hooks()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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ERGRjlwuh729PR4/fix1KSbl8ePHqFy5stRlVDj29vaQy0sWZRmAy4kGDXRd4M2bLfXr5s+3Rq9eabBgH5+IiEyEXC7nwzDySUpKgrOzs9Rl0FMYncqR/PMC//WXDL/+yt9hiIiIiIqDAbgccXPTol8/w7HA8+dbcywwERERUTEwAJczU6dmQRDyusCXL7MLTERERFQcDMDlDLvARERERC+HAbgcYheYiIiIqOQYgMshd/eCXeAFC9gFJiIiInoRDMDlVP4u8KVLMuzcyS4wERER0fMwAJdT7u5a9O3LLjARERFRcTEAl2P5u8B//inDrl3sAhMRERE9CwNwOebhocWbbxbsAvMR7ERERERFYwAu5/J3gS9eZBeYiIiI6FkYgMu5hg216NOn4LzA7AITERERFY4BuAIorAv822/sAhMREREVhgG4AmjUSIvevdkFJiIiInoRDMAVxAcfZBksx8XJsHs3u8BERERE+TEAVxCFdYEjItgFJiIiIsqPAbgC+eCDTIPluDgZfv+dXWAiIiKipzEAVyCenlr06sUuMBEREdGzMABXMPm7wBcuyBAdzS4wERERUS4G4AqmcWMtevbM3wW2YheYiIiI6H8YgCug/F3g8+fl7AITERER/Q8DcAX0+usFu8Dz57MLTERERAQwAFdY+bvA587JsWcPu8BEREREDMAV1Ouva/HGG+wCExEREeXHAFyB5e8C//GHHHv3sgtMRERE5o0BuALz8tKiRw92gYmIiIiexgBcweXvAp89K8e+fewCExERkfliAK7gmjTRont3doGJiIiIcjEAm4HwcMMu8Jkzcuzfzy4wERERmadyH4C7dOmCNm3aoHXr1pg/f77U5ZikJk206NaNT4cjIiIiAipAAI6MjMTRo0dx5MgR7Nu3D3FxcVKXZJIK6wIfOMAuMBEREZmfch+AK1euDADIzs5Gdna2xNWYrqZNtejalV1gIiIiIkkD8NGjRzFw4EA0bNgQSqUS69evL7DPypUr4eXlBScnJwQGBuLYsWMF9unYsSMaNGiAdu3awcvLyxill0vTphl2gU+fliMmhl1gIiIiMi+SBuD09HQ0atQIERERsLGxKbA9KioK06ZNw+TJkxEbG4uWLVsiODgYCQkJBvvt378fly9fxsWLF3H58mVjlV/uNG2qRVAQu8BERERk3iQNwF26dMHMmTPR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\n",
      "text/plain": [
       "<Figure size 720x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = sbs_reg_clip_hook.plot_losses()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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hFu3bmHZsmWcB5iIiIhIS2l8FoiijB8/Hrm5uZg8ebL0QRgRERHSOYABYO3atQgMDES/fv0AAJ6enjKzSZiYmCAyMhKTJk1C586dIRQK4efnB39//1I/HyIiIiLSvDJVAO/fv1/mtUAg+Oi0TKamplizZk2R+3VwcEB0dLRKYiQiIiKi8k2j06AREREREZU2FsBEREREpFVYABMRERGRVmEBTERERERahQUwEREREWkVFsBEREREpFVYABMRERGRVmEBTERERERahQUwEREREWkVFsBEREREpFVYABMRERGRVmEBTERERERahQUwEREREWkVFsBEREREpFVYABMRERGRVmEBTERERERahQUwEREREWkVFsBEREREpFVYABMRERGRVmEBTERERERahQUwEREREWkVFsBEREREpFVYABMRERGRVmEBTERERERahQUwEREREWkVFsBEREREpFVYABMRERGRVmEBTERERERahQUwEREREWkVFsBEREREpFVYABMRERGRVmEBTERERERahQUwEREREWkVFsBEREREpFVYABMRERGRVmEBTERERERahQUwEREREWkVFsBEREREpFU0VgCvXbsWLi4usLa2hrW1Nbp164ZDhw5J10skEgQFBaFx48awtLREr169cO3aNZl9iMVi+Pj4wMbGBjY2NvDx8YFYLJZpc+XKFfTs2ROWlpaws7NDcHAwJBJJqZwjEREREZU9GiuAa9asiTlz5uCvv/5CbGwsOnbsiOHDh+Pvv/8GAISEhCA0NBTBwcGIiYmBmZkZvL29kZ2dLd3HmDFjkJSUhPDwcOzatQtJSUkYO3asdH1WVha8vb1hbm6OmJgYLFiwAMuXL8eKFStK/XyJiIiIqGyopKkD9+rVS+b1//73P6xfvx6JiYlwcHBAWFgYJkyYAC8vLwBAWFgYRCIRdu3ahZEjR+LGjRs4evQoDh48iHbt2gEAfvnlF3h6eiI5ORkikQjh4eHIzc1FWFgYDAwMYG9vj5s3b2LlypXw9/eHQCAo9fMmIiIiIs0qE2OA3759i927d+P58+dwdHRESkoK0tLS4O7uLm1jYGAAFxcXnD17FgCQkJCAKlWqSItfAHBycoKRkZFMG2dnZxgYGEjbdOnSBampqUhJSSmlsyMiIiKiskRjPcDAu/G5Hh4eyMvLg5GREf744w84ODhIC1gzMzOZ9mZmZkhNTQUApKeno3r16jK9uAKBADVq1EB6erq0Tc2aNeX2UbCuTp06hcaWnJxc7PMpyTYVHa+JYrwu8nhNFCvudRGJRBo9fkm3qegq9jUxLHTNx867ZNel5McrDyrCOaiDqnOhRgtgkUiEkydP4tmzZ9i7dy/GjRuHqKgo6foPhyhIJBK5gvdDH2tTcAPcx4Y/FPdDpGDYBf2H10QxXhd5vCaKlYXrwlz46Sr8NYl7WOiqos67xNelhMcrDyr8e6WE1HFdNDoEQk9PD/Xq1UPLli0xa9YsNG3aFCtXroSFhQUASHtyC2RkZEh7cM3NzZGRkSEzo4NEIkFmZqZMG0X7AOR7l4mIiIhIO5SJMcAF8vPz8erVK9ja2sLCwgKxsbHSdXl5eTh9+rR0zK+joyNycnKQkJAgbZOQkIDnz5/LtDl9+jTy8vKkbWJjY2FlZQVbW9tSOisiIiIiKks0VgDPnj0b8fHxSElJwZUrVzBnzhzExcVh4MCBEAgEGDduHJYtW4a9e/fi6tWr8PX1hZGREQYMGAAAaNSoEbp27YqAgAAkJiYiISEBAQEB6N69u7SbfMCAATAwMICvry+uXr2KvXv3YtmyZfD19eUMEERERERaSmNjgNPS0uDj44P09HRUrVoVDg4O2LVrF7p06QIAGD9+PHJzczF58mSIxWK0bt0aERERMDY2lu5j7dq1CAwMRL9+/QAAnp6eWLhwoXS9iYkJIiMjMWnSJHTu3BlCoRB+fn7w9/cv3ZMlIiIiojLjkwtgiUSCFy9ewMjIqFjbhYWFFbleIBBg2rRpmDZtWqFtTE1NsWbNmiL34+DggOjo6GLFRkREREQVl9JDIPbu3YtZs2bJLFu2bBlq1qwJa2trDB06FC9evFB5gEREREREqqR0ARwaGorHjx9LX1+4cAFz585F69atMWLECBw9ehQhISFqCZKIiIiISFWUHgJx69YteHt7S1/v2rUL1apVw+7du6Gvr49KlSohIiKiyCELRERERESapnQP8IsXL2Bo+N/TV2JiYtClSxfo6+sDAJo2bYqHDwufnJqIiIiIqCxQugCuVasWLly4AAC4ffs2rl+/Dnd3d+n6J0+eoHLlyqqPkIiIiIhIhZQeAjF48GAEBQUhNTUV169fh1AoRI8ePaTrz58/jwYNGqglSCIiIiIiVVG6AJ44cSJevnyJw4cPo1atWlixYgVMTEwAAE+fPkV8fDx8fX3VFigRERERkSooXQDr6upixowZmDFjhtw6U1NTJCcnqzQwIiIiIiJ1KNGjkB88eICLFy8iJydH1fEQEREREalVsQrgqKgotGrVCs2aNYO7uzvOnTsHAMjMzISLiwv27dunliCJiIiIiFRF6QL40KFD+Oqrr1CjRg0EBgZCIpFI11WvXh21a9fG1q1b1RIkEREREZGqKF0AL1y4EO3atcPhw4fxzTffyK1v27YtLl++rNLgiIiIiIhUTekC+OrVq+jXr1+h6y0sLJCRkaGSoIiIiIiI1OegbTAAACAASURBVEXpAlhPTw8vX74sdP39+/dRtWpVlQRFRERERKQuShfATk5OiIyMVLguKysLW7Zsgaurq8oCIyIiIiJSB6UL4KlTp+LKlSvo27cvoqOjAQBJSUnYsGED3NzckJWVhSlTpqgtUCIiIiIiVVC6AG7ZsiV27dqFhw8fwt/fHwAwc+ZM/PDDD9DV1cWuXbvQqFEjtQVKRERERKQKSj8JDgA6dOiAxMREXL58Gbdv30Z+fj7q1q2LFi1aQCAQqCtGIiIiIiKVUboA3rZtG1xcXGBra4umTZuiadOmMutTUlIQHx+PoUOHqjxIIiIiIiJVUXoIhJ+fHxISEgpdf+7cOfj5+akkKCIiIiIidVG6AH7/yW+K5ObmQldX95MDIiIiIiJSpyKHQNy/fx/37t2Tvr558yZOnTol104sFmPjxo2wtbVVfYRERERERCpUZAG8ZcsWBAcHQyAQQCAQYMmSJViyZIlcO4lEAh0dHYSEhKgtUCIiIiIiVSiyAPby8kLDhg0hkUgwZswYjBkzBs7OzjJtBAIBDA0N0bx5c1haWqo1WCIiIiKiT1VkAWxnZwc7OzsAwMuXL+Hi4oI6deqURlxERERERGqh9DRow4YNU2ccRERERESlolgPwnj58iX27duHixcv4tmzZ8jPz5dZLxAIsGLFCpUGSERERESkSkoXwA8fPkSfPn1w584dmJiYICsrC6amphCLxcjPz0f16tVhZGSkzliJiIiIiD6Z0vMAz5o1C48fP8bBgwdx7tw5SCQSbNiwAY8ePcL//vc/GBgY4M8//1RnrEREREREn0zpAvj48eMYPXo02rVrBx2d/zbT19fHxIkT4eLigmnTpqklSCIiIiIiVVG6AM7JyUHdunUBAHp6egCA7Oxs6XpnZ2eFD8kgIiIiIipLlC6Arays8OjRIwCAkZERTE1NcfnyZen6+/fv47PPPlN9hEREREREKqT0TXDOzs6IiYnB1KlTAQB9+vTB8uXLUalSJeTn52PVqlXo3r272gIlIiIiIlIFpQtgPz8/xMbGIi8vD5UrV8bs2bNx7949/PzzzwCADh06YMGCBWoLlIiIiIhIFZQugB0cHODg4CB9LRQKERERgWfPnkFHRwfGxsZqCZCIiIiISJWK9SAMRUxMTFQRBxERERFRqSi0AN62bVuJdjh06NASB0NEREREpG6FFsC+vr5yywQCAQBAIpEoXA6wACYiIiKisq3QadAuXbok8y8uLg4ODg5wcnLCpk2bEBcXh5MnT2Ljxo1o164dmjRpgri4OKUPvHTpUnTu3BnW1taoX78+Bg8ejKtXr8q0kUgkCAoKQuPGjWFpaYlevXrh2rVrMm3EYjF8fHxgY2MDGxsb+Pj4QCwWy7S5cuUKevbsCUtLS9jZ2SE4OFiuiCciIiIi7VBoAVxQUBb8W716NUxNTbF//354eXnBwcEBTZo0Qd++fbF//36YmJhg9erVSh84Li4Oo0ePxqFDh7B3715UqlQJffv2xdOnT6VtQkJCEBoaiuDgYMTExMDMzAze3t4yD+AYM2YMkpKSEB4ejl27diEpKQljx46Vrs/KyoK3tzfMzc0RExODBQsWYPny5VixYkVxrxURERERVQBKPwhj37596N27t8xwB+lOdHTQp08f7Nu3T+kDR0RE4IsvvoC9vT0cHBywevVqZGRk4MyZMwDe9f6GhYVhwoQJ8PLygr29PcLCwpCTk4Ndu3YBAG7cuIGjR49i2bJlaNeuHRwdHfHLL7/g0KFDSE5OBgCEh4cjNzcXYWFhsLe3h5eXF8aPH4+VK1eyF5iIiIhICyldAL958wb37t0rdP3du3fx+vXrEgeSk5OD/Px8CIVCAEBKSgrS0tLg7u4ubWNgYAAXFxecPXsWAJCQkIAqVaqgXbt20jZOTk4wMjKSaePs7AwDAwNpmy5duiA1NRUpKSkljpeIiIiIyielC2B3d3esWbMG4eHhMj2nEokEO3fuxLp169ClS5cSBzJ16lQ0bdoUjo6OAIC0tDQAgJmZmUw7MzMzpKenAwDS09NRvXp1mV5pgUCAGjVqyLRRtI+CdURERESkXZSeB3jhwoW4fv06xo4dixkzZqBu3boQCAS4c+cO0tPTIRKJSvwkuOnTp+PMmTM4ePAgdHV1ZdZ9OORCIpHIFbwf+libggJe0bYFCoZQFEdJtqnoeE0U43WRx2uiWHGvi0gk0ujxS7pNRVexr4lhoWs+dt4luy4lP155UBHOQR1UnQuVLoAtLCxw4sQJbNq0CYcPH8b9+/chkUjQpEkTeHh44Ouvv0blypWLFRwATJs2DREREdi3bx/q1KkjczzgXS9t7dq1pcszMjKkPbjm5ubIyMiQKXglEgkyMzNl2nzY05uRkQFAvnf5fcX9EElOTlb5B095x2uiGK+LPF4TxcrCdWEu/HQV/prEPSx0VVHnXeLrUsLjlQcV/r1SQuq4LsV6Epy+vj7Gjh0rM8vCpwgMDERERASioqLQsGFDmXW2trawsLBAbGwsWrVqBQDIy8vD6dOnMXfuXACAo6MjcnJykJCQIB0HnJCQgOfPn0tfOzo6Yvbs2cjLy5MW6LGxsbCysoKtra1KzoOIiIiIyg+lxwC/7++//0Z0dDSio6Px999/l2g2hUmTJmHr1q1Yt24dhEIh0tLSkJaWhpycHADvhieMGzcOy5Ytw969e3H16lX4+vrCyMgIAwYMAAA0atQIXbt2RUBAABITE5GQkICAgAB0795d+pfCgAEDYGBgAF9fX1y9ehV79+7FsmXL4OvrW+QQCCIiIiKqmIrVA7x7927MmjULjx49khlHW7NmTcyaNQsDBw5Uel/r1q0DAHh5ecksDwwMxLRp0wAA48ePR25uLiZPngyxWIzWrVsjIiICxsbG0vZr165FYGAg+vXrBwDw9PTEwoULpetNTEwQGRmJSZMmoXPnzhAKhfDz84O/v39xTp2IiIiIKgilC+AtW7bA398fIpEIc+bMQYMGDSCRSHD79m389ttvGDt2LF69eoXhw4crtb8Pn9amiEAgwLRp06QFsSKmpqZYs2ZNkftxcHBAdHS0UnERERERUcWmdAG8dOlStG7dGlFRUXI3u33zzTfo2bMnli5dqnQBTERERESkCUqPAX748CEGDhyocKaHypUrY/DgwXj06JFKgyMiIiIiUjWlC+DGjRsjNTW10PWPHj1Co0aNVBIUEREREZG6KF0Az507F5s3b0ZkZKTcut27d+O3337DTz/9pNLgiIiIiIhUTekxwMuXL0f16tUxevRoTJ06VeZJcI8fP0b9+vXx66+/4tdff5VuIxAIsHPnTrUETkRERERUEkoXwNevX4dAIJA+la1gvK++vj5q166Nly9f4saNGzLbcJ5dIiIiIiprlC6AL1++rM44iIiIiIhKRYmeBEdEREREVF4V2QN87ty5QtcJBALp8AcTExOVB0ZEREREpA5FFsBdu3b96DhegUAAR0dHzJ8/H61atVJpcEREREREqlZkARwaGlrkxrm5ubhx4wb27NmDzz//HIcOHULTpk1VGiARERERkSoVWQAPGzZMqZ1MnjwZrq6uWLx4MTZv3qySwIiIiIiI1EElN8GZmZnhiy++QHx8vCp2R0RERESkNiqbBcLa2hrPnj1T1e6IiIiIiNRCZQXw3bt3Ua1aNVXtjoiIiIhILVRSAN+7dw+bNm1Cx44dVbE7IiIiIiK1KfImuJCQkCI3zs3Nxa1bt3D48GEIBAIEBgaqNDgiIiIiIlUrsgCePXv2R3dgaGiIzp07Y+bMmahfv76q4iIiIiIiUosiC+BLly4VuXHlypVRo0YN6OjwicpEREREVD4UWQDb2NiUVhxERERERKWCXbdEREREpFVYABMRERGRVmEBTERERERahQUwEREREWmVIm+CI6LCCTc+LHSdeGStUoyEiIiIioMFMFERiipyiYiIqHxSugDOysrC8OHDMW/ePDRv3lydMRGVe0UVzokdSjEQIiINYi6kskrpAvjNmzeIi4uDWCwGwIKYqLRxyAUREZFqFFkAN2vWDG3atEGrVq2kjzkWCAQA5AtiovKqtIc5tI0zBOI4tIKItBtzIWlSkQWwv78/zp07h02bNuH27dsQCAT48ccf4eHhgaZNmwL4ryAmIiIiIioPiiyAfXx8pP+/e/cuWrZsibp16yIuLg7Lly+HQCDA1KlT0aFDB7Rr1w6Ojo6wtrZWe9BERERERCVVZAF86dIlNGnSBLq6uqhatSoAYPTo0XBzc8PDhw/RpEkT2NnZ4datW9ixYweys7Px5MmTUgmc6EPaPEZWm8+diIiouIosgDt16gQDAwM0b94cdnZ2EAgEyMnJAQAYGBgAAL766iu4ublBIpHg+vXr6o+YqAQ4nRkREREVKLIAvnr1Kv7v//4P58+fR2JiIiQSCb788kvUq1cPrVq1gkAgQFZWFoB3Y4Ht7OxKJWgiIiIiopIqsgC2srJC79690bt3b2RmZqJBgwaYP38+3rx5g7/++gsSiQRff/01rKys0LZtW7Rt2xZ+fn6lFTsRKYHDI4iIiGQpPQ9wwWwP9vb2cHNzw7Bhw9CgQQMsXLgQurq6OHv2LDZu3MgCmKgcYXFMRETaSOkCuFKlSmjfvj2EQiGA/wpikUgENzc3jBw5Uj0REr2HY3mJiIjoUyldAFetWhVRUVH/bfhBQUxEREREVB4oXQB/6MOCmIiIiIioPNDR5MFPnTqFIUOGwM7ODkKhEFu2bJFZL5FIEBQUhMaNG8PS0hK9evXCtWvXZNqIxWL4+PjAxsYGNjY28PHxkXs885UrV9CzZ09YWlrCzs4OwcHBkEgkaj8/IiIiIip7StwDrArPnz+Hvb09hg4dim+//VZufUhICEJDQxEaGgqRSISFCxfC29sbiYmJMDY2BgCMGTMGDx48QHh4OAQCAb7//nuMHTsWO3bsAABkZWXB29sbLi4uiImJQXJyMvz8/GBoaIjvvvuuVM+XqDwp6Xhr3jxHRERlnUYLYA8PD3h4eAAAfH19ZdZJJBKEhYVhwoQJ8PLyAgCEhYVBJBJh165dGDlyJG7cuIGjR4/i4MGDaNeuHQDgl19+gaenJ5KTkyESiRAeHo7c3FyEhYXBwMAA9vb2uHnzJlauXAl/f3/pzXxEREREpB00WgAXJSUlBWlpaXB3d5cuMzAwgIuLC86ePYuRI0ciISEBVapUkRa/AODk5AQjIyOcPXsWIpEICQkJcHZ2lj65DgC6dOmC+fPnIyUlBXXq1CnN0yIlcKYHIiIiUqcyWwCnpaUBAMzMzGSWm5mZITU1FQCQnp6O6tWry/TiCgQC1KhRA+np6dI2NWvWlNtHwbrCCuDk5ORix1ySbSq6wq5J2zjDUo6ESkthf8AkdnhR5Hb8/VGsuNdFJBJp9Pgl3aaiq9jXpOzk84pwnSvCOaiDqnNhmS2AC3w4REEikcgVvB/6WJuCG+CKGv5Q3A+RgiEX9J8ir0kce3m1TVG/H/z9UawsXBfmwk9X4a9JGcrn5f06V/j3Sgmp47podBaIolhYWACAtCe3QEZGhrQH19zcHBkZGTIzOkgkEmRmZsq0UbQPQL53mYiIiIgqvjLbA2xrawsLCwvExsaiVatWAIC8vDycPn0ac+fOBQA4OjoiJycHCQkJ0nHACQkJeP78ufS1o6MjZs+ejby8PFSuXBkAEBsbCysrK9ja2mrgzLRH2zjDMtUzQJpV1NjuxA6lGAgREWk9jfYA5+TkICkpCUlJScjPz8eDBw+QlJSE+/fvQyAQYNy4cVi2bBn27t2Lq1evwtfXF0ZGRhgwYAAAoFGjRujatSsCAgKQmJiIhIQEBAQEoHv37tKu8gEDBsDAwAC+vr64evUq9u7di2XLlsHX15czQBARERFpIY32AF+4cAG9e/eWvg4KCkJQUBCGDh2KsLAwjB8/Hrm5uZg8eTLEYjFat26NiIgI6RzAALB27VoEBgaiX79+AABPT08sXLhQut7ExASRkZGYNGkSOnfuDKFQCD8/P/j7+5feiRIRERFRmaHRAtjV1VXuqW3vEwgEmDZtGqZNm1ZoG1NTU6xZs6bI4zg4OCA6OrrEcRIRERFRxVFmxwATkfYoarw4nyxHRESqxgKYPgkfWkFERETlDQtgIirTivoji73DRERUEmV2HmAiIiIiInVgDzB9FIc5EBERUUXCHmAiIiIi0irsASaicovjg4mIqCRYAGsRDmUgIiIi4hAIIiIiItIy7AEmogqppN94cOgEEVHFxx5gIiIiItIqLICJiIiISKuwACYiIiIircIxwERE7+HUakREFR8L4DKspB/EnO6MiIiIqHAcAkFEREREWoU9wOUUe3mJSh+HRxARVQwsgDWMhSwRERFR6eIQCCIiIiLSKuwBLgXs5SWq+Dg8goio/GABTESkQUUVzokdSjEQIiItwgJYRdrGGQJx7OklInn8FoiIqGzhGGAiIiIi0iosgImIiIhIq7AAJiIiIiKtwgKYiIiIiLQKC2AiIiIi0iosgImIiIhIq7AAJiIiIiKtwgKYiIiIiLQKC2AiIiIi0iosgImIiIhIq7AAJiIiIiKtwgKYiIiIiLQKC2AiIiIi0iosgImIiIhIq7AAJiIiIiKtwgKYiIiIiLSK1hTA69atQ7NmzWBhYQE3NzfEx8drOiQiIiIi0gCtKIAjIiIwdepU/PDDDzhx4gQcHR0xcOBA3L9/X9OhEREREVEp04oCODQ0FMOGDcPXX3+NRo0aYdGiRbCwsMCGDRs0HRoRERERlTKBWCyWaDoIdXr16hWsrKywfv169O3bV7p80qRJuHr1Kg4cOKDB6IiIiIiotFX4HuDMzEy8ffsWZmZmMsvNzMyQnp6uoaiIiIiISFMqfAFcQCAQyLyWSCRyy4iIiIio4qvwBXD16tWhq6sr19ubkZEh1ytMRERERBVfhS+A9fT00KJFC8TGxsosj42NRbt27TQUFRERERFpSiVNB1Aa/Pz8MHbsWLRu3Rrt2rXDhg0b8O+//2LkyJGaDo2IiIiISlmF7wEGgH79+iEoKAiLFi2Cq6srzpw5g507d8LGxuaT971p0yZ8/vnnsLGxgVAoREpKilwbsVgMHx8f2NjYwMbGBj4+PhCLxZ987PKiV69eEAqFMv9GjRql6bBKHR/GIisoKEjufdGwYUNNh1XqTp06hSFDhsDOzg5CoRBbtmyRWS+RSBAUFITGjRvD0tISvXr1wrVr1zQUrWLMg8phLnyHuVAWc+E7pZ0LtaIABoAxY8bg8uXLSE9Px19//YX27durZL8vXryAu7s7pk6dWuSxk5KSEB4ejl27diEpKQljx45VyfHLi+HDh+PGjRvSf7/88oumQypVfBiLYiKRSOZ9oY0fhM+fP4e9vT0WLFgAAwMDufUhISEIDQ1FcHAwYmJiYGZmBm9vb2RnZ2sgWsWYB5XHXMhcqAhzYennQq0YAqFOvr6+AIALFy4oXH/jxg0cPXoUBw8elI45/uWXX+Dp6Ynk5GSIRKJSi1WTDA0NYWFhoekwNOb9h7EAwKJFi3Ds2DFs2LABs2bN0nB0mlOpUiWtfl8AgIeHBzw8PAD8l08KSCQShIWFYcKECfDy8gIAhIWFQSQSYdeuXWVmGBfzoPKYC5kLFWEuLP1cqDU9wJqSkJCAKlWqyNxw5+TkBCMjI5w9e1aDkZWu3bt3o169enBycsKMGTPKVO+Vur169QoXL16Eu7u7zHJ3d3eteg8ocvfuXdjZ2aFZs2YYNWoU7t69q+mQypSUlBSkpaXJvHcMDAzg4uJSrt47zIP/YS5kLlSEubBo6siF7AFWs/T0dFSvXl1mzmGBQIAaNWpozYM4Bg4cCGtra1haWuL69euYM2cO/v77b+zZs0fToZUKPoxFsTZt2mDlypUQiUTIyMjAokWL4OHhgTNnzqBatWqaDq9MSEtLAwCF753U1FRNhFQizIPvMBcyFyrCXPhx6siFLIAVmDdvHhYvXlxkm3379sHV1VWp/Sl64EZ5fxBHca7RiBEjpMscHBxQp04ddOnSBRcvXkSLFi3UHGnZwYexyOrWrZvM6zZt2qBFixbYunUr/P39NRRV2aSJ9w7zoHKYC4uPuVAWc6HyVPneYQGswLhx4zBo0KAi29SuXVupfZmbmyMjI0PmhySRSJCZmVmuH8TxKdeoZcuW0NXVxZ07d7Qi6fNhLMqpUqUKGjdujDt37mg6lDKjYExgenq6zO9Tabx3mAeVw1yoPOZC5TAXylNHLmQBrED16tVRvXp1lezL0dEROTk5SEhIkI5/S0hIwPPnz8v1gzg+5RpduXIFb9++1ZoB/+8/jKVv377S5bGxsejTp48GIytb8vLykJycrHSPojawtbWFhYUFYmNj0apVKwDvrtPp06cxd+5ctR6beVA5zIXKYy5UDnOhPHXkQhbAnygtLQ1paWm4desWgHd3Oz979gzW1tYwNTVFo0aN0LVrVwQEBCAkJAQSiQQBAQHo3r27Vtz5/M8//2Dnzp3w8PBAtWrVcOPGDcyYMQPNmjWDk5OTpsMrNXwYi7wZM2agR48eqF27tnTc24sXLzB06FBNh1aqcnJypD09+fn5ePDgAZKSkmBqagpra2uMGzcOS5YsgUgkQoMGDbB48WIYGRlhwIABGo78P8yDH8dc+A5zoTzmwndKOxcKxGKxRJUnoG2CgoIQHBwstzw0NBTDhw8HADx9+hSBgYGIjo4GAHh6emLhwoUQCoWlGqsmPHjwAD4+Prh27RqeP3+OWrVqwcPDA1OnToWpqammwytV69atQ0hICNLS0mBnZ4eff/5ZZfNRl0ejRo1CfHw8MjMzUaNGDbRp0wY//vgjGjdurOnQStXJkyfRu3dvueVDhw5FWFgYJBIJFixYgE2bNkEsFqN169ZYvHgx7O3tNRCtYsyDH8dc+B/mQlnMhe+Udi5kAUxEREREWoXzABMRERGRVmEBTERERERahQUwEREREWkVFsBEREREpFVYABMRERGRVmEBTERERERahQUwUSkQCoUICgqSvt6yZQuEQiFSUlI0GBURUeliLqSyggUwVVhPnz7F/Pnz4erqCmtra5ibm6NJkyb4+uuvsW/fPkgkFX8K7B07dmDlypWaDoOINIi5kLmQ5PFBGFQhXbp0CYMGDcLTp0/Rt29ftGnTBgYGBnj48CGOHDmCc+fOYfHixRgzZkypxCMUChEYGIhp06YBAN6+fYvXr19DX18fAoFAbcft378/bt68icuXL6vtGERUdjEXvsNcSB+qpOkAiFTt2bNnGDZsGCQSCY4fPy73mMSpU6fixIkTePbsWZH7efHiBQwNDdUSo66uLnR1ddWybyIigLmQqCgcAkEVzqZNm/Dw4UPMnz+/0GeEd+zYUeaZ4wXj0E6cOIGpU6eiYcOGqFmzJoB3Xx/OmDEDLi4uqF27NmrVqoXPP/8cZ86ckdtvVlYWxo8fjzp16sDa2hpffvkl/v33X7l2hY17u3DhAgYPHgwbGxtYWlrC3d0dBw8eVLhtfHw85s6di0aNGsHS0hLe3t64e/eutF2vXr1w7Ngx3L9/H0KhUPqvQGRkJDp37gxra2vY2NjAxcUFwcHBH7/ARFQuMBe+w1xIirAHmCqc6OhoGBgYwMvLq9jbBgYGwsTEBBMnTkRWVhYA4O7du/jzzz/h5eWFevXq4dmzZ/jtt9/g5eWF2NhY6QeLRCLBF198gZMnT+LLL79E06ZNcfz4cQwcOFCpY8fFxaF///6wt7fH5MmToaenh8jISAwdOhSbN29Gnz59ZNpPnz4dBgYGCAgIQGZmJlasWAEfHx8cPnwYADBp0iSIxWL8+++/+Pnnn2W2PX78OEaNGoWOHTti5syZ0NXVRXJyMuLj44t9zYiobGIuZC6kwrEApgrn+vXrqF+/PvT09GSWP3/+HHl5edLXlSpVgomJiUwbQ0NDREVFoVKl/3417O3tcfHiRZmv6UaMGIG2bdti1apV+PXXXwEABw8exIkTJzB9+nRMmTIFAPDNN9/gm2+++ei4M4lEgoCAADg6OuLPP/+Ejo6OdPvu3btj5syZckm/INaCtqamppg+fTquXbsGOzs7dO7cGZaWlsjKysLgwYNltj106BCMjY0RERHBrx+JKijmQuZCKhyHQFCFk52dDWNjY7nls2fPRv369aX/hg0bJtfm66+/lkn4AKCvry9NjHl5eXjy5Any8/PRunVrXLx4Udru0KFD0NHRwdixY2W2Hzdu3Edjvnz5MpKTk6U3q2RmZiIzMxNPnz5F165dcffuXdy7d09mm5EjR0oTPgC0b98eAGS++iuMsbExnj9/jpiYmI+2JaLyibnw7kePx1yovdgDTBWOsbExsrOz5Zb7+PigV69eAAB/f3+F29apU0duWX5+PkJCQrBp0ya5cWq2trbS/9+/fx/m5uZyPSkNGjT4aMy3b98GAHz33Xf47rvvFLbJyMiAjY2N9LW1tbXM+oIxbU+fPv3o8UaPHo09e/Zg4MCBsLKygpubG3r37o2ePXuq9U5sIio9zIXMhVQ4FsBU4TRu3BgXL17Eq1evZL76E4lEEIlEAAADAwOF2ypavmzZMsydOxdDhw7FjBkzUK1aNejq6mLp0qX4559/pO0kEkmJE2Z+fj6Adz0zLVq0UNjmww+Pwr6uU2ZOTwsLC8TFxSE2NhZHjx7FsWPHsH37dnTr1g07d+5k4ieqAJgLmQupcCyAqcLx9PTEmTNnsGfPHgwaNOiT9xcREYEOHTogLCxMZvn7TzMCABsbGxw/fhzPnj2T6fm4devWR49Rt25dAECVKlXQqVOnT465QFHJW09PD927d0f37t0hkUgwZ84cLFu2DGfPnoWTk5PKYiAizWAu/A9zIX2IY4CpwhkxYgRq1aqFH3/8EdeuXVPYpjhPPtLV1ZVrf/bsWSQkJMgsP0Ne4wAAAi5JREFU8/DwQH5+PlavXi2z/MMPC0VatGiB+vXrY/ny5Qrn5MzIyFA63vcZGhoq3N+TJ09kXgsEAjRr1gwAIBaLS3QsIipbmAv/w1xIH2IPMFU4JiYm2LJlCwYPHgw3NzeZpx/9+++/OHToEG7duoU2bdootT9PT08sWLAAY8eOhYuLC27fvo1NmzahcePGyMnJkWnXvn17BAUF4cGDB2jWrBliY2OVesa9jo4OVqxYgf79+8PJyQnDhw+HjY0N/v33XyQmJuL+/fsK59r8mJYtW2Lv3r0IDAxEmzZtoKOjg/79++O7777DkydP0LFjR9SqVQupqalYu3YtLC0tpTeQEFH5xlz4H+ZC+hALYKqQWrRogfj4eISFhSE6Ohr79+/H69evYW5ujjZt2mDixInw9PRUal8TJ05Ebm4uwsPD8eeff8LOzg4bNmzA7t27ERcXJ20nEAiwdetWzJgxA3v27EFkZCTc3NwQHh4OOzu7jx7H2dkZx44dw8KFC7Fp0yZkZWXBzMwMTZo0kT42tLh8fHxw/fp17Ny5E2vWrIFEIkH//v0xaNAg/Pbbb9i4cSPEYjHMzc3RrVs3BAYGKrxrnIjKJ+bCd5gL6UMCsVis/PcfRERERETlHMcAExEREZFWYQFMRERERFqFBTARERERaRUWwERERESkVVgAExEREZFWYQFMRERERFqFBTARERERaRUWwERERESkVVgAExEREZFWYQFMRERERFrl/wEnX7k0bTtlOgAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 720x288 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = gradient_distrib(sbs_reg_clip, 'fc1', sbs_reg_clip_hook, 'fc1')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
